2013-04-02 76 views
0
 InputStream input = Faculty.class.getClassLoader().getResourceAsStream("Resources\\Names.txt"); 
     DataInputStream in = new DataInputStream(input); 
     BufferedReader br = new BufferedReader(new InputStreamReader(in)); 
     String strLine; 
     while ((strLine = br.readLine()) != null && !strLine.equals("")) { 
      keywords.add(strLine); 
     } 

上面的代码在NetBeans中可用。但是当我把代码打包成一个可执行的jar文件并从命令行运行它时,由于未初始化的input,它给了我一个NullPointerException。所以我怀疑Jar无法读取打包在其中的资源文件。文件夹Resources直接位于我的项目的源文件夹下。任何人都可以提供一些提示什么尝试?getResourceAsStream的InputStream结果为NULL

+0

有什么你试过了吗?你也没有在任何地方使用这个输入流,看起来你在其他地方有一个fstream – Farlan

+0

什么是Names.txt文件的全限定路径? –

+0

@Farlan对不起,这是一个错字。 –

回答

0

,你应该这样写:

getResourceAsStream("/Resources/Names.txt"); 

如果不加前缀“/”,这意味着你的路径是基于你的类路径上,而不是根路径

相关问题