Ich habe einige wirklich hässlich suchen Code von Menschen gesehen, ihre eigenen Methoden der Umwandlung eines Httpresponse in eine Zeichenfolge später zu verwenden, das Schreiben auf, die etwa wie folgt aussieht:Wie bekomme ich eine Zeichenfolge von meiner HTTP-Antwort android?
httppost.setEntity(new UrlEncodedFormEntity(valuePairs));
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
InputStream is = entity.getContent();
BufferedReader reader = new BufferedReader(new InputStreamReader(is,"UTF8"),8);
StringBuilder sb = new StringBuilder();
sb.append(reader.readLine() + "\n");
String line="0";
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
is.close();
String result = sb.toString();
nicht nur, dass etwas ist ein Durcheinander , aber es ist wirklich hässlich und ich kann oft nicht sagen, was mit dem Code los ist, weil dieses Durcheinander vorangeht. Gibt es einen besseren Weg, dies zu tun?
Es gibt ein Problem damit. Wenn die Antwort gezippt wird, funktioniert das nicht. Sie müssen 'InputStream stream = AndroidHttpClient.getUngzippedContent (response.getEntity());' und wandeln dann den InputStream in eine Zeichenfolge um. Ich habe noch keinen besseren Weg gefunden. –
ist möglich funktioniert 2013, aber 2016 nicht! Das ist mein Fehler -> Methode hat 'java.lang.IllegalStateException' Ausnahme ausgelöst. – delive