为什么我收到此错误?我需要从文本文件中读取并允许他们登录,如果密码和用户名匹配,但我一直收到错误"没有发现任何行"。但我的文本文件有行
import java.util.*;
import java.io.*;
public class Program7_4Part2 {
public static void main(String[] args) throws IOException {
Scanner fileInput = new Scanner(new File("accounts.txt"));
// PART 2
ArrayList<String> userNames = new ArrayList<>();
ArrayList<String> passwords = new ArrayList<>();
// read data from file
while (fileInput.hasNextLine()) {
userNames.add(fileInput.next());
String line = fileInput.nextLine();
String[] userName = line.split(" ");
userNames.add(userName[0]);
passwords.add(userName[1]);
}
// login
System.out.println("Login.");
System.out.println("Username: ");
String userNameLogin = fileInput.nextLine();
System.out.println("Password: ");
String pwLogin = fileInput.nextLine();
}
}
答案 0 :(得分:0)
如果您显示实际错误会很有帮助。但我怀疑你从这一行得到了错误:
String userNameLogin = fileInput.nextLine();
您已经在while
循环中读完了整个文件。所以这里没有下一行可供阅读。
但是你可能想在这里读取System.in,而不是从文件中读取。