我必须将html作为文本文件读取,并且我已经实现了两种不同的方法,如SO线程所述。我清理html,只留下正文内容,使用document.write(string)将它放入DOM中,但只有当我使用Bufferedreader.readLine()(在循环中附加stringBuilder)时它才有效。事实上,如果我在Logcat窗口中打印stringBuilder.toString(),我会看到当使用BufferedReader.readLine()时,stringBuilder会显示在Logcat窗口的一行中,而使用InputStreamReader.read(charArray,0, (int)numBytes)它显示为多行(我使用的是真实设备)。也许这可能是相关的,并建议哪个是问题。我的问题是:我如何清理或处理读取的char数组(charArray,0,(int)numBytes)与readLine()循环中追加的stringBuilder相同?
答案 0 :(得分:0)
BufferedReader.readLine()
方法读取到行尾并返回值排除换行符。因此,当您将其附加到StringBuffer
时,所有内容都会附加到单行。但是,在InputStreamReader.read
的情况下,还包括换行符,导致字符串以多行显示。
要使行为相似,您必须在使用InputStreamReader.read
时跳过换行符。