Я хотів би прочитати ресурс з моєї баночки так:
File file;
file = new File(getClass().getResource("/file.txt").toURI());
BufferredReader reader = new BufferedReader(new FileReader(file));
//Read the file
і він працює добре, коли запускає його в Eclipse, але якщо я експортую його в банку, запустіть його, є IllegalArgumentException:
Exception in thread "Thread-2"
java.lang.IllegalArgumentException: URI is not hierarchical
і я дійсно не знаю, чому, але з деяким тестуванням я виявив, що змінити
file = new File(getClass().getResource("/file.txt").toURI());
до
file = new File(getClass().getResource("/folder/file.txt").toURI());
тоді він працює навпаки (працює в банку, але не затемнення).
Я використовую Eclipse, і папка з моїм файлом знаходиться в папці класу.
getResourceAsStream
це все ж більш просте і портативне рішення проблеми.