我有一个文件,我们称之为text.txt。它包含几行文字。我试图用我的代码阅读这个,以便我可以使用我的代码编辑它,不幸的是,每当我尝试阅读它时,它只返回null,并且根本不加载代码。没有错误信息或任何内容。
示例是包含以下内容的文件:
a
b
c
d
e
f
加载后,会加载以下内容:
a
b
c
d
null
这对我来说毫无意义,因为如果它进入了while循环,它就不应该退出!有人可以帮帮我吗?
try
{
File theFile = new File(docName);
if (theFile.exists() && theFile.canRead())
{
BufferedReader docFile;
docFile = new BufferedReader(
new FileReader(f));
String aLine = docFile.readLine();
while (aLine != null)
{
aLine = docFile.readLine();
doc.add( aLine );
}
docFile.close();
}
答案 0 :(得分:3)
请注意,您正在阅读第一行
String aLine = docFile.readLine();
然后你通过
放弃这一行aLine = docFile.readLine();
在循环中。
答案 1 :(得分:0)
在阅读下一行之前添加该行。如果你从逻辑上考虑这个问题,它应该是有道理的,如果没有,请问。
答案 2 :(得分:0)
while ( (aLine = docFile.readLine())!= null)
{
doc.add( aLine );
}
答案 3 :(得分:0)
在while循环中,如果你翻转两个语句,那么它会添加你知道不为空的行,然后检查下一行。你现在拥有它的方式,循环检查行,然后前进一行并将新的一行添加到doc,所以它可以为null,然后在添加null后退出。