【发布时间】:2011-03-05 20:58:45
【问题描述】:
我试图在我的可运行 .jar 文件中包含一些文本文件作为资源。以下代码应打印一个文件的内容:
URI resourceFile = Driver.class.getResource("/etc/inputfile.txt").toURI();
System.out.println("Opening URI: " + resourceFile.toString());
File infile = new File(resourceFile);
Scanner sc = new Scanner(infile);
while (sc.hasNextLine())
System.out.println(sc.nextLine());
sc.close();
导出为可运行jar后,运行时得到如下输出:
打开 URI:rsrc:etc/inputfile.txt
java.lang.IllegalArgumentException:URI 不是分层的 在 java.io.File.(File.java:363)
如果我使用 getResourceAsStream 可以毫无问题地打印文件,但出于其他原因我想使用 File 对象。
我该如何解决这个问题?
谢谢,
马丁
【问题讨论】:
-
stackoverflow.com/questions/46135427/… 可能会有所帮助。我有类似的问题。
标签: java jar distribution