2014-11-03 35 views
1

我想使我的项目中的任何文件都可以被任何用户读取,因为他们不会拥有和我一样的目录。如何读取项目内的文件txt?

所以我有这样的:

String filme = "somefile.txt" 

String datastr = ""; 
    reader = new BufferedReader(new FileReader("C:/Path"+filename)); 
    String line = reader.readLine(); 
    while(line != null) { 
     datastr += line + "\n"; 
     line = reader.readLine(); 
    } 

任何帮助,将不胜感激。在此先感谢

+2

http://stackoverflow.com/questions/2914375/getting-file-path-in-java – nem035 2014-11-03 21:18:11

回答

0

只是要简单,ClassLoader是答案:

 
ClassLoader cl = Thread.currentThread().getContextClassLoader(); 
URL rsc = cl.getResource("MyFile.txt"); 
File f = new File(rsc.getPath()); 

但这里有关于这个问题hereherehere只是为了快速搜索更多的答案。使用搜索! ;-)

+0

所以我这样做是这样的... String datastr =“”; \t ClassLoader cl = Thread.currentThread()。getContextClassLoader(); \t URL rsc = cl.getResource(file); \t FileReader f = new FileReader(rsc.getPath()); \t reader = new BufferedReader(f); \t \t String line = reader.readLine(); \t \t while(line!= null){ \t \t \t datastr + = line +“\ n”; \t \t \t line = reader.readLine(); \t \t} 并收到java.lang.NullPointerException ... – pMpC 2014-11-03 21:40:12

+0

@pmpc使用调试器找出在哪个步骤中获得NPE。和你的'文件'变量是什么? – 1ac0 2014-11-04 07:34:22