Java filenotfoundexception和文件存在
这不是我第一次在java中使用文件,但这是我第一次使用Java filenotfoundexception和文件存在,java,filenotfoundexception,fileinputstream,Java,Filenotfoundexception,Fileinputstream,这不是我第一次在java中使用文件,但这是我第一次使用FileInputStream 我在resources/backup.TXT中有一个TXT文件 然后在我的代码中,当我将文件放入FileInputStream构造函数时,它抛出一个FileNotFoundException 代码如下: public void loadList() { try { ArrayList<Partido> myList = Pronosticos.getInstance(
FileInputStream
我在resources/backup.TXT中有一个TXT文件
然后在我的代码中,当我将文件放入FileInputStream
构造函数时,它抛出一个FileNotFoundException
代码如下:
public void loadList() {
try {
ArrayList<Partido> myList = Pronosticos.getInstance().getMyList();
myList.clear();
File file = new File("resources/backup.txt");
// create an ObjectInputStream for the file
ObjectInputStream ois = new ObjectInputStream(new FileInputStream(file));
// read and print an object and cast it as ArrayList<Partido>
if (file.length() != 0){
myList .addAll((ArrayList<Partido>) ois.readObject());
ois.close();
}
}
catch (Exception ex) {
ex.printStackTrace();
}
}
public void loadList(){
试一试{
ArrayList myList=Pronosticos.getInstance().getMyList();
myList.clear();
File File=新文件(“resources/backup.txt”);
//为文件创建ObjectInputStream
ObjectInputStream ois=新ObjectInputStream(新文件输入流(文件));
//读取并打印对象并将其强制转换为ArrayList
如果(file.length()!=0){
myList.addAll((ArrayList)ois.readObject());
ois.close();
}
}
捕获(例外情况除外){
例如printStackTrace();
}
}
我不应该将路径放在我的电脑上,因为我需要它在另一台电脑上工作。尝试像这样加载文件:
URL url = getClass().getResource("backup.txt");
File file = new File(url.getPath());
并将文件对象传递给
FileInputStream
这应该可以工作。我使用相同的项目设置对此进行了测试:
//note the beginning forward slash
URL url = getClass().getResource("/backup.txt");
File file = new File(url.getPath());
尝试使用
backup.txt
作为文件名,而不是resources/backup.txt
是否可以提供stacktrace..C:\Users\Casa\Downloads\eclipse Yes这是工作目录。问题是,我需要该程序在另一台计算机上正常工作,因此,如果我设置该路径,它将只在我的电脑上工作。更新了我的答案。它与其他答案类似,但通过添加所需的正斜杠,我得到了NullPointerException。