У меня есть HTML-файл в каталоге моего JAR-файла в pages / newTab.html, а в Eclipse он, очевидно, находится в res / pages / newTab.html. Моя цель здесь - прочитать содержимое всего HTML-файла и сохранить его в виде строки.
Я пробовал несколько способов получить файл как ресурс, а затем прочитать его с помощью BufferedReader, он работает в Eclipse, но не в Runnable JAR. Обычно я получаю файл как ресурс, это работает в Eclipse, но не в Runnable JAR.
getClass().getResource("/pages/" + url.substring(7))
Вот что у меня есть.
File file = new File(getClass().getResource("/pages/" + url.substring(7)).toURI());
FileReader fileReader = new FileReader(file);
BufferedReader bufferedReader = new BufferedReader(fileReader);
StringBuffer stringBuffer = new StringBuffer();
String line;
while ((line = bufferedReader.readLine()) != null) {
stringBuffer.append(line);
stringBuffer.append("\n");
}
fileReader.close();
jep.setContentType("text/html");
jep.setText(stringBuffer.toString());
jep - это JEditorPane, на который мы печатаем текст.
EDIT: я получаю java.lang.IllegalArgumentException: URI is not hierarchical
при запуске Runnable JAR с File file = new File(getClass().getResource("/pages/" + url.substring(7)).toURI());