2012-05-08 1 views
0

Мне просто нужно расшифровать ответ от HttpResponse в отклике детские картины, так что я сделал:Применить ResponseText и положить его в качестве InputStream

HttpPost httppost = new HttpPost(tileURLString); 
nameValuePairs.add(new BasicNameValuePair("x", String.valueOf(ValueX))); 
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); 

и если я получаю ответ на

HttpResponse response = httpclient.execute(httppost); 
HttpEntity entity = response.getEntity(); 
if (entity == null) { 
    Log.i("Error","No content download"); 
} 

InputStream in = entity.getContent(); 

это Работа. но мне нужно получить этот вывод как строку для расшифровки с помощью xor, поэтому все, что я сделал, это:

String responseText = EntityUtils.toString(response.getEntity()); 
InputStream in = new ByteArrayInputStream(responseText.getBytes()); 

PS. это еще не расшифровывает только обычный входной поток, но не работает. Я гугл в течение дня. Помоги мне, пожалуйста. если эта работа я перейду к следующему шагу (расшифровать). Спасибо заранее.

EDIT: или я использую этот метод Преобразовать InputStream в строку с помощью

private String convertStreamToString(InputStream is) { 

     BufferedReader reader = new BufferedReader(
       new InputStreamReader(is)); 
     StringBuilder sb = new StringBuilder(); 

     String line = null; 
     try { 
      while ((line = reader.readLine()) != null) { 
       sb.append((line + "\n")); 
      } 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } finally { 
      try { 
       is.close(); 
      } catch (IOException e) { 
       e.printStackTrace(); 
      } 
     } 
     return sb.toString(); 
    } 

Тогда я использовать это, чтобы преобразовать обратно в InputStream, но он также не работает.

public InputStream convertStringToStream(String text) 
      throws UnsupportedEncodingException { 
     return new ByteArrayInputStream(text.getBytes("UTF-8")); 
    } 

ответ

0
String responseText = EntityUtils.toString(response.getEntity()); 
InputStream in = new ByteArrayInputStream(responseText.getBytes()); 

изменен

InputStream is = response.getEntity().getContent(); 
+0

, если я использую 'getEntity(). GetContent()' как я могу адаптировать ответ, прежде чем превращать его во входной поток? – majorl3oat

+0

почти забыл это спасибо за ответ. – majorl3oat

 Смежные вопросы

  • Нет связанных вопросов^_^