Я пишу небольшое приложение, которое получает html с веб-сервера на основе некоторых переменных в HTTP POST.HTML-данные, которые возвращаются, содержат раздел <pre>
, в котором есть несколько слов, которые хорошо разнесены с помощью символов новой строки и табуляции, но мое приложение их не получает.Код выглядит следующим образом:
HttpPost post = new HttpPost("REMOVED FOR PRIVACY");
try {
// Add your data
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
//REMOVED FOR PRIVACY
post.setEntity(new UrlEncodedFormEntity(nameValuePairs));
// Execute HTTP Post Request
HttpResponse response = httpClient.execute(post, httpContext);
String htmlBrief = inputStreamToString(response.getEntity().getContent()).toString();
return htmlBrief;
}
Я думаю, что это может быть то, как я читаю ответ, передавая его через BufferedReader, например, так:
private StringBuilder inputStreamToString(InputStream is) throws IOException {
int c;
StringBuilder total = new StringBuilder();
// Wrap a BufferedReader around the InputStream
BufferedReader rd = new BufferedReader(new InputStreamReader(is));
// Read response until the endIndex
while ((c = rd.read()) != -1) {
total.append((char)c);
}
// Return full string
return total;
}
Я думал, что это может быть, потому что я былчтение построчно в буферизированном считывателе, поэтому я переключался на один символ за раз, но это не помогло.
Любая помощь будет принята с благодарностью.
Спасибо, Бен