Java ';while(Scanner.hasNextLine())和#x27;即使存在更多行,也会跳过吗?

Java ';while(Scanner.hasNextLine())和#x27;即使存在更多行,也会跳过吗?,java,while-loop,io,java.util.scanner,Java,While Loop,Io,Java.util.scanner,下面显示的代码应该分别从文本文件中读取每一行,将当前行存储到字符串fileLine中,然后打印出fileLine的内容 当文本文件仅包含一行时,代码按所述执行并打印该行。但是,当文本文件的超过一行时,“while(sc.hasNextLine())”语句将被完全跳过,这让我在使用类似版本的此代码读取同一项目中的其他文本文件时感到挠头 密码 文本文件内容 更新:似乎当文本文件中每行的文本数减少时,Scanner.nextLine()会按预期运行。也许使用Scanner类在这里不是一个选项?这似乎是

下面显示的代码应该分别从文本文件中读取每一行,将当前行存储到字符串fileLine中,然后打印出fileLine的内容

当文本文件仅包含一行时,代码按所述执行并打印该行。但是,当文本文件的超过一行时,“while(sc.hasNextLine())”语句将被完全跳过,这让我在使用类似版本的此代码读取同一项目中的其他文本文件时感到挠头

密码 文本文件内容
更新:似乎当文本文件中每行的文本数减少时,Scanner.nextLine()会按预期运行。也许使用Scanner类在这里不是一个选项?

这似乎是我的IntelliJ IDE当前版本的问题(或者更可能是我的配置的问题)。 当运行调试工具进行调查时,while循环将立即返回false


将项目导入Eclipse后,代码按预期运行。我还可以将我的IntelliJ版本的项目构建到一个JAR中,它将按预期运行,因此这将是我目前的解决方法。

不相关,但使用它可能会更容易。这几乎不是一个简单的问题:几乎所有发布的代码,尤其是“解析”代码,与扫描仪找不到所有线条的原因无关。即使是示例输入文件也不需要所有这些内容来创建MCVE。请将代码和数据编辑到演示问题所需的绝对最小值。无法复制。从问题(日期:2020-03-31 22:22:12Z)复制代码和文本文件。程序按预期打印了4行文本。--如果您的程序没有打印任何内容,您是否记得实际调用方法
fetchCurrentStock()
?哦,我想我知道发生了什么。您是否在Eclipse中运行该程序?Eclipse
控制台
视图显示程序输出,但显示很长的行时出现问题。您的问题不是您的程序,而是Eclipse。尝试从命令提示符运行程序。例如,请参见或@Dylan IntelliJ可能与Eclipse有类似的最大行长问题,只是使用比Eclipse更短的行。它可能有一个更改该限制的设置,类似于Eclipse的设置,如提供的链接所示。
private File stockFile = new File(stockFilePath);

public void fetchCurrentStock() throws FileNotFoundException {
        Scanner sc = new Scanner(stockFile);
        String fileLine = "";
        //Name\tPrice\tDescription\tSupplierName\tItemImagePath\tItem_ID\tQuantity
        while(sc.hasNextLine()){
            fileLine = sc.nextLine();
            System.out.println(fileLine);
        }
   }
Samsung Galaxy S20+ 999 Samsung's latest & greatest PhonesHub   null    001 20
Samsung Galaxy A10  130 Capture clear photos, in any light. Watch, play and browse more on the 6.2 inch HD+ display.    PhonesHub   null    002 25
Samsung Galaxy S10  750 Last years base flagship model, great power at a respectable price. PhonesHub   null    003 30
Huawei P30      380 Take your photography to the next level with the P30’s triple camera & 6.1 inch display.    PhonesHub   null    004 15