Попытка прочитать файл rtf из Jar в JEditorPane; работает в Netbeans, а не из Jar
Извините, если это очевидно, но я искал несколько дней, и я не могу найти ответ.
Здесь ситуация. Я пытаюсь прочитать из файла RTF, расположенного в файле JAR, а затем отобразить его в JEditorPane. Это работает из среды Netbeans, но не при выполнении файла JAR в папке dist. Версия этого вопроса была задана ранее, но я не думаю, что предыдущие ответы применимы к моему заявлению. (Причина в том, что JEditorPane.read требует FileInputStream, и все решения других проблем, которые я видел, включали не-File InputStreams. Вот код, о котором идет речь:
descPane = new JEditorPane("application/rtf", "");
try {
File test = new File(this.getClass().getResource("files/general.rtf").toURI());
descPane.read(new FileInputStream(test), null);
} catch (Exception ex) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
}
Любая помощь очень ценится! Спасибо!
1 ответ
Использовать URL
получен из getResource()
загрузить документ. Если он находится в банке, он не будет доступен как File
,
Что-то вроде этого:
URL urlToRtf = this.getClass().getResource("files/general.rtf");
descPane.setPage(urlToRtf);