读取文件 java 长行
reading file java long lines
我试图从 java 文件中读取文本行,而我试图使用 never 运行 的 while 循环(例如 readText.hasNextLine() 评估为 false)。我尝试用不同的文件做同样的事情并且当时它工作,但是当我向文件添加更长的文本行时它不再工作了。 Scanner 可以读取的行的长度是否有限制?为什么我的文件似乎不再包含文本?
这是我的代码:
import java.util.*;
import java.io.*;
public class errorSolve{
public static void main(String[] args) throws FileNotFoundException{
Scanner readText = new Scanner (new File("try.txt"));
while(readText.hasNextLine()){
System.out.println(readText.nextLine());
}
}
}
在我添加 while 循环之前我得到了这个错误:
Exception in thread "main" java.util.NoSuchElementException: No line found
at java.util.Scanner.nextLine(Scanner.java:1540)
at errorSolve.main(errorSolve.java:7)
我在这里测试过,它起作用了,伙计。并且 Scanner 类型的对象没有行限制。我用 100Mb 的文本文件进行了测试。
类似疑惑:here
好的,所以我发现失败的原因不是代码失败,而是因为我的文件中的引号类型错误。显然,如果您从 Microsoft Word 复制和粘贴文本,它们会使用不同类型的引号,这会导致扫描器无法正常工作,因为它们不是 ASCII 代码字符。 (” 与 “)
我试图从 java 文件中读取文本行,而我试图使用 never 运行 的 while 循环(例如 readText.hasNextLine() 评估为 false)。我尝试用不同的文件做同样的事情并且当时它工作,但是当我向文件添加更长的文本行时它不再工作了。 Scanner 可以读取的行的长度是否有限制?为什么我的文件似乎不再包含文本? 这是我的代码:
import java.util.*;
import java.io.*;
public class errorSolve{
public static void main(String[] args) throws FileNotFoundException{
Scanner readText = new Scanner (new File("try.txt"));
while(readText.hasNextLine()){
System.out.println(readText.nextLine());
}
}
}
在我添加 while 循环之前我得到了这个错误:
Exception in thread "main" java.util.NoSuchElementException: No line found
at java.util.Scanner.nextLine(Scanner.java:1540)
at errorSolve.main(errorSolve.java:7)
我在这里测试过,它起作用了,伙计。并且 Scanner 类型的对象没有行限制。我用 100Mb 的文本文件进行了测试。
类似疑惑:here
好的,所以我发现失败的原因不是代码失败,而是因为我的文件中的引号类型错误。显然,如果您从 Microsoft Word 复制和粘贴文本,它们会使用不同类型的引号,这会导致扫描器无法正常工作,因为它们不是 ASCII 代码字符。 (” 与 “)