2010-12-16 32 views
0

I had problems while finding the path of file(s) in Netbeans.Netbeans Built .jar不能与类文件一起使用

问题已经解决(检查答案)。

今天我发现了另一个问题:当项目完成时,我必须执行生成的.jar来启动程序,但它不起作用,因为发生错误:NullPointer(在哪里加载文件)在访问时/ Netbeans之外的开放瓶子。

是否可以在Netbeans甚至任何目录下使用Java/Netbeans中的类文件打开文件?

我发现已经在网站上发现了一些关于我的问题的线索,但都没有帮助。

代码:

File file = new File(URLDecoder.decode(this.getClass().getResource("file.xml").getFile(), "UTF-8")); 

回答

2

你的问题是,该文件仅提到的文件在文件系统中,而不是文件的罐子。

如果您想要更通用的定位器,请使用getResource提供的URL。但是,通常您不需要知道文件的位置,只需要它的内容,在这种情况下,您可以使用getResourceAsInputStream()

这一切都假定您的类路径配置正确。

0

是的,你应该能够在Java程序可以访问你的文件系统上的任意位置加载文件。您只需要在getResource调用中明确设置路径。

例如:

File file = new File(URLDecoder.decode(this.getClass().getResource("C:\\foo\\bar\\file.xml").getFile(), "UTF-8")); 
+0

如何直接设置绝对路径?我必须在其他系统上完成这项工作,所以这不是我的解决方案。 – Poru 2010-12-16 21:29:13

+0

与File file = new File(“C:\\ foo \\ bar \\ file.xml”)不一样吗? – 2010-12-16 21:30:25

相关问题