JAVA读取了本地TXT,但是导出JAR并运行时提示系统找不到指定路径??求助

2024-11-20 09:47:48
推荐回答(4个)
回答(1):

在编写代码时使用的是绝对路径来访问的这个文件,然而这个文件是在jar包中的,jar包中有自己的一套Url编址:jar:!/{entry})。所以导致运行时无法访问到文件。
解决办法就是在构造File对象时使用url来构造,而文件的url获取使用ClassLoader.
URL fileURL=this.getClass().getResource("0.txt");
File file = new File(fileURL);
FileInputStream fis = new FileInputStream(file);
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(fis));

回答(2):

new File("0.txt")代表相对路径,也就是读取与你当前运行的JAR文件在同一个文件夹内的0.txt文件。
你可以尝试把0.txt文件复制到JAR同文件夹下,或者使用绝对路径,如“c:\folder\0.txt”。

回答(3):

你都生成了JAR文件了,那就意味着相对路径就是变了

楼主建议你用绝对路径, 例如 "C:\Users\haha\Desktop\OBJC\0.txt"
这样就不会有错了。。。

有些编译器不同就会出错
出错就用 "C:\\Users\\haha\\Desktop\\OBJC\\0.txt"

回答(4):

写成 D:/a/b/0.txt

或者 D:\\a\\b\\0.txt,