我试图从带有Scanner
类的文本文件中读取,但它不能按我的意愿工作。
这个简单的代码
public static void main(String[] args) throws IOException {
File f = new File("D://Blandat/Test.txt");
Scanner sc = new Scanner(f);
System.out.println(sc.hasNext());
}
即使我有3行文字,输出也会变为false
。
Hello World!
最好的还未到来
这是带文字的第三行,其间有一个空行。
即使是
sc.hastNext()
我至少应该得到Hello的输出,但我什么也没收到。
我使用过其他类,如FileInputStream, InputStreamReader, BufferedReader
,所有这些都使用相同的路径,文本和所有内容。
答案 0 :(得分:0)
在try catch中包装。看看你是否能发现任何异常。在程序员记事本中打开,看看是否有任何奇怪的BOM标记或任何东西。此外,仔细检查您的导入,确保您没有自动完成错误的扫描仪类。应该是java.util.Scanner;我认为。
try {
File f = new File("D://Blandat//Test.txt");
Scanner sc = new Scanner(f);
while (sc.hasNextLine()) {
String line = sc.next();
System.out.println(line);
}
sc.close();
}
catch (Exception e) {
e.printStackTrace();
}
答案 1 :(得分:0)
我不知道为什么但是在我手动更改文件中的某些文本后,我编译了我的代码,就像一个魅力。我甚至回去使用了当我收到“错误”之后的相同文字,甚至那个工作......我已经完成了。