2014-11-03 4 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

ответ

0

Просто, чтобы быть простым, ClassLoader является ответом:

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

Но вот больше ответов на эту тему here, here и here только для быстрого поиска. Используйте поиск! ;-)

+0

Так я сделал это, как это ... Строка datastr = ""; \t ClassLoader cl = Thread.currentThread(). GetContextClassLoader(); \t URL rsc = cl.getResource (файл); \t FileReader f = новый FileReader (rsc.getPath()); \t reader = new BufferedReader (f); \t \t Строка 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

+0

@pmpc использовать отладчик, чтобы узнать, на каком этапе вы получаете NPE. и что находится в вашей переменной 'file'? – 1ac0