我正在尝试在我的Android应用中使用BufferedReader读取一个php文件。 但我的读者读到< / p为H.或者< / BR>因为文字没有换行... 我的代码是这样的
HttpEntity entityResponse = res.getEntity();
InputStream im = entityResponse.getContent();
BufferedReader reader = new BufferedReader(new InputStreamReader(im, HTTP.UTF_8));
String tmp = "";
while((tmp = reader.readLine())!= null)
{
if(tmp != null)
{
total1.add(tmp);
Log.d("testq", "total1."+i+" "+tmp);
tmp = reader.readLine();
total2.add(tmp);
Log.d("testq", "total2."+i+" "+tmp);
tmp = reader.readLine();
total3.add(tmp);
Log.d("testq", "total3."+i+" "+tmp);
tmp = reader.readLine();
total4.add(tmp);
Log.d("testq", "total4."+i+" "+tmp);
tmp = reader.readLine();
total5.add(tmp);
Log.d("testq", "total5."+i+" "+tmp);
tmp = reader.readLine();
total6.add(tmp);
Log.d("testq", "total6."+i+" "+tmp);
}
}
我有6个字符串ArrayList的原因是因为在我的情况下六行是一组数据。 但是当我检查里面的数据时,
02-22 15:55:39.557: D/testq(2030): total1.0 2</p>0</p>upload/Ww2016. 2. 22. 3:55:16.png</p>Qq</p>ee</p></p>
02-22 15:55:39.557: D/testq(2030): total2.0 null
02-22 15:55:39.557: D/testq(2030): total3.0 null
02-22 15:55:39.557: D/testq(2030): total4.0 null
02-22 15:55:39.557: D/testq(2030): total5.0 null
02-22 15:55:39.557: D/testq(2030): total6.0 null
虽然它应该是
total1.0 - 2
total2.0 - 0
total3.0 - upload/Ww2016. 2. 22. 3:55:16.png
total4.0 - qq
total5.0 - ee
total6.0 - null
我怎样才能正确地读出那些&lt; / p为H. S 13
答案 0 :(得分:0)
好</p>
不是一个换行符,所以没有理由把它作为一个读取。 BufferedReader对html一无所知。如果你需要担心的是</p>
和</br>
,那么你可以使用string.split()
将数据分成几部分。但实际上,除非你屏幕抓取一个你无法控制的网站,否则你发送一个JSON或XML对象比解析html要好得多。