java.io.FileNotFoundException: xxx.txt (系统找不到指定的文件。)的错误解决办法
今天在写一个读取文件功能的时候报了如下错误:
java.io.FileNotFoundException: maildata.txt (系统找不到指定的文件。)
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.io.FileInputStream.<init>(FileInputStream.java:93)
at com.rxl.design_pattern.facade.pagemaker.Database.getProperties(Database.java:27)
at com.rxl.design_pattern.facade.pagemaker.PageMaker.makeWelcomePage(PageMaker.java:25)
at designModeTest.FacadeTest.facadeTest(FacadeTest.java:24)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
一开始我的代码是这样写的:
String filename = "xxx.txt";
Properties properties = new Properties();
try {
properties.load(new FileInputStream(filename));
} catch (IOException e) {
e.printStackTrace();
System.out.println("Warning: " + filename + " is not found.");
}
并且在上层目录有xxx.txt文件,然后我将xxx.txt文件拉到当前目录一样报错,后来去查api。
是这样写的:
构造方法摘要
- FileInputStream(File file)
通过打开一个到实际文件的连接来创建一个 FileInputStream,该文件通过文件系统中的 File 对象 file 指定。 - FileInputStream(FileDescriptor fdObj)
通过使用文件描述符 fdObj 创建一个 FileInputStream,该文件描述符表示到文件系统中某个实际文件的现有连接。 - FileInputStream(String name)
通过打开一个到实际文件的连接来创建一个 FileInputStream,该文件通过文件系统中的路径名 name 指定
。
修改
将filename文件的改成绝对路径就可以了
String filename = "D:\\WorkSpace\\xxx.txt";