Java 读取.txt文件直到找到某个单词或读取一定数量的行

Java 读取.txt文件直到找到某个单词或读取一定数量的行,java,java.util.scanner,Java,Java.util.scanner,我只是想知道,在你找到某个单词或读到一定数量的行之前,是否有可能读一个.txt文件。我正在使用Java扫描器,这就是我所尝试的 reader = new Scanner(new File(path)); find = (String) wupList.getSelectedItem(); reader.useDelimiter(find); while(reader.hasNext()){ website = reader.next();

我只是想知道,在你找到某个单词或读到一定数量的行之前,是否有可能读一个.txt文件。我正在使用Java扫描器,这就是我所尝试的

    reader = new Scanner(new File(path));

    find = (String) wupList.getSelectedItem();

    reader.useDelimiter(find);

    while(reader.hasNext()){

        website = reader.next();
        username = reader.next();
        password = reader.next();

    }

这只是我正在制作的一个小程序,用于读取.txt文件。它甚至不会被使用,所以我不会加密密码或任何东西。

首先-在某个时候修改
,而
循环到
中断
。因此,假设您读取完所有值后,
break
it。差不多

while(reader.hasNext()){
    website = reader.next();
    username = reader.next();
    password = reader.next();
    break;
} 
//similarly, you can modify the above code 
//if you can read all the inputs in one line
while (reader.hasNextLine()) {
    String[] lineArray = reader.nextLine().split("specifyDelimeterHere");
    website = lineArray[0];
    username = lineArray[1];
    password = lineArray[2];
    break;
}
现在,为什么
NoTouchElementException

老实说,这只是猜测。您很可能得到了它,因为在关闭扫描仪实例时,您没有脱离
和/或
。在这里,循环需要更多的输入,但资源正在关闭。使用
Scanner
类中定义的
close()


请在评论中告诉我这是否有帮助。

发生了什么事?@Tirath,我收到了一系列错误,主要是java.util.NoSuchElementException。如果你想要完整的错误报告,我很乐意链接一个。当然。请这样做。@Tirath,给你。我会修改并让您知道!:)我得到了lineArray[1]上的“ArrayIndexOutOfBounds”错误。
String lineArray
不应该是
String[]lineArray
?如果您正在使用建议的修改,那么请确保在一行中传递所需值中的所有值,该行由
delimeter
分隔,另一行添加一个检查以确定正确的值。我建议,首先,试着用你已经拥有的东西来实现它。并且,如果您使用文件读取行,请确保文件中的三个值都在一行中。设法使其正常工作。:)非常感谢你!