【发布时间】:2016-03-23 10:14:44
【问题描述】:
我正在尝试使用文本文件将各种参数输入到数组中,然后使用该数组创建对象。文本文件中的每个留置权都有每个对象用逗号分隔的字符串和单个对象的单独行。
我似乎无法弄清楚我做错了什么,当我尝试调用加载文件的方法时,我不断收到此错误: "线程 "main" java.io.FileNotFoundException 中的异常:studentData.txt (系统找不到指定的文件)"
这是我的方法:
public void loadStudent() throws FileNotFoundException{
File inputFile = new File("studentData.txt");
Scanner input = new Scanner(inputFile);
try{
while(input.hasNext()){
String info = input.nextLine();
String elements[] = info.split(" , ");
String fName = elements[0];
String lName = elements[1];
String phone = elements[2];
String address = elements[3];
double gpa = Double.parseDouble(elements[4]);
String major = elements[5];
Student student = new Student(fName, lName, phone, address,
gpa, major);
addStudent(student);
input.nextLine();
count++;
}
input.close();
}catch(FileNotFoundException e){
e.printStackTrace();
}
}
【问题讨论】:
-
你认为它不存在的地方。根据您的代码,它应该位于执行代码的同一目录中
-
所以你是说文件名不正确?
-
我是说,您认为您要查找的文件在哪里,它不是。尝试将
System.out.println(new File(".").getCanonicalPath());或System.out.println(System.getProperty("user.dir"));添加到您的代码中,这将告诉您的程序是从哪里执行的,该文件应位于该目录中 -
谢谢,我刚试过这个,我找到了文件所在的位置,但它不允许我把那个位置放进去,我收到一条红色下划线,上面写着“无效的转义序列(有效的转义序列是...等)”
-
不,不要使用路径,将文件放在那个位置,Java 会读取它
标签: java arrays input text-files java-io