android开发读取TXT文件漏行!!!

2024-12-17 13:51:27
推荐回答(2个)
回答1:

sBuffer.append(in.readLine() );
if (in.readLine() ==null){
break;
}

你这里执行了两次in.readLine(),但只有第一次读取的内容被你保存起来了。
按照您的代码出来的结果应该是123789null

如果想要获得期望的结果,可以修改代码如下:
String str= null;
while (null != (str = in.readLine())){
sBuffer.append(str);
}

回答2:

问题在于in.readLine()
你调用in.readLine() 的时候就会去读取文件中的一行,你在if里有调用了一次in.readLine() ,而这次调用你又没存在字符串中,所以读取的结果就会有漏行的现象
while (true){
String tempStr = in.readLine();
if (tempStr ==null){
break;
}
sBuffer.append(tempStr);
}