无法读取java中的文本文件内容
我正在开发一个java控制台应用程序,它应该有管理员和普通用户的登录界面,根据文本文件的内容读取和验证输入无法读取java中的文本文件内容,java,arrays,Java,Arrays,我正在开发一个java控制台应用程序,它应该有管理员和普通用户的登录界面,根据文本文件的内容读取和验证输入 //Method for teller/shop assistant login public static void tellerLogin(){ //loading and reading the text file containing the login credentials Scanner scan = new Scanner (new File("the \\
//Method for teller/shop assistant login
public static void tellerLogin(){
//loading and reading the text file containing the login credentials
Scanner scan = new Scanner (new File("the \\ dir\\myFile.extension"));
Scanner keyboard = new Scanner (System.in);
String user = scan.nextLine();
String pass = scan.nextLine();
//String variables to hold the data retrieved from the text file
String inpUser = keyboard.nextLine();
String inPass = keyboard.nextLine();
//Verifying the user input against the text file contents for verification
if (inpUser.equals(user) && inPass.equals(pass)){
System.out.println(" Logged in as Admin");
tellerMenu();
}
else{
System.out.println("Incorrect credentials");
}
}
然而,我似乎被困在读取文本文件的内容,它不断地给出一个错误,指出:“未能找到文件”
下面是我查找和读取文本文件内容的代码
//Method for teller/shop assistant login
public static void tellerLogin(){
//loading and reading the text file containing the login credentials
Scanner scan = new Scanner (new File("the \\ dir\\myFile.extension"));
Scanner keyboard = new Scanner (System.in);
String user = scan.nextLine();
String pass = scan.nextLine();
//String variables to hold the data retrieved from the text file
String inpUser = keyboard.nextLine();
String inPass = keyboard.nextLine();
//Verifying the user input against the text file contents for verification
if (inpUser.equals(user) && inPass.equals(pass)){
System.out.println(" Logged in as Admin");
tellerMenu();
}
else{
System.out.println("Incorrect credentials");
}
}
以下是错误:
SEVERE: null java.io.FileNotFoundException: D:\pasd\adminlogin.txt (The system cannot find the file specified) at
java.io.FileInputStream.open0(Native Method) at
java.io.FileInputStream.open(FileInputStream.java:195) at
java.io.FileInputStream.<init>(FileInputStream.java:138) at
java.util.Scanner.<init>(Scanner.java:611) at
kiosk.Kiosk.adminLogin(Kiosk.java:89) at kiosk.Kiosk.main(Kiosk.java:35)
SEVERE:null java.io.FileNotFoundException:D:\pasd\adminlogin.txt(系统找不到指定的文件)位于
java.io.FileInputStream.open0(本机方法)位于
java.io.FileInputStream.open(FileInputStream.java:195)位于
java.io.FileInputStream.(FileInputStream.java:138)位于
Scanner.(Scanner.java:611)位于
kiosk.kiosk.adminLogin(kiosk.java:89)位于kiosk.kiosk.main(kiosk.java:35)
如果要在此处使用绝对路径文件,则需要
新文件(“the\dir\myFile.extension”)
\dir\myFile.extension是绝对路径
请注意以下示例语法:
windows系统
:C:\1.txt
Mac或linux
:/Users/home/xxx.txt
如果将文件设置为相对路径,则可以使用资源目录中的资源文件:YouClass.class.getClassLoader().getResource(path)
例如
具体来说,针对您的问题:
D:\pasd\adminlogin.txt
中确认您的文件D:/pasd/adminlogin.txt的路径分隔符\
更改为/
adminlogin.txt
放在项目resources
目录中新文件(“the\\dir\\myFile.extension”)
这是您的代码中的文件,还是您刚刚这么做的?我在我的代码中有实际位置确定了,基于错误,打开文件不是失败,但是,它甚至找不到文件——如果您不介意将其包含在帖子中,那么完整的错误应该会提供更多的信息。我们可以帮助您调试它。下面是错误。严重:null java.io.FileNotFoundException:D:\pasd\adminlogin.txt(系统找不到指定的文件)位于java.io.FileInputStream.open0(本机方法)的java.io.FileInputStream.open(FileInputStream.java:195)的java.io.FileInputStream.(FileInputStream.java:138)的java.util.Scanner.(Scanner.java:611)的kiosk.kiosk.adminlogin(Kiosk.java:89)在Kiosk.Kiosk.main(Kiosk.java:35)好的,那么根据D:\pasd\adminlogin.txt
,你能为我们验证文件是否在D:
驱动器的pasd
文件夹中吗?还要确保拼写100%正确谢谢。这很有帮助,我现在可以继续了。