Как включить текстовые файлы с исполняемым Jar - PullRequest
12 голосов
/ 20 апреля 2010

Привет, ребята, новичок в Java.

У меня есть проект Java, и я хочу включить текстовый файл в исполняемый файл jar. Прямо сейчас текстовый файл находится в пакете по умолчанию.

InputFlatFile currentFile = new InputFlatFile ("src / theFile.txt");

Я получаю файл с этой строкой, как вы можете видеть, используя src. Однако это не работает с исполняемым файлом jar.

Может кто-нибудь сообщить мне, как сохранить этот файл с исполняемым файлом jar, чтобы кто-то, использующий программу, мог просто щелкнуть по одному значку и запустить программу.

Спасибо!

Ответы [ 2 ]

5 голосов
/ 20 апреля 2010

вы хотите это в исполняемом банке? Затем, чтобы прочитать файл, вы должны использовать

getClass().getResourceAsStream()

чтобы прочитать файл.

Сохраните текстовый файл в пакете, из которого вы хотите получить к нему доступ. Загрузчик классов найдет его.

Помните также, что имена файлов в JAR-файлах чувствительны к регистру.

5 голосов
/ 20 апреля 2010

Базовый каталог в файле jar находится в пути к классам.

Попробуйте InputFlatFile currentFile = new InputFlatFile ("theFile.txt");

Возможно, вы используете IDE, и в нем есть папка src, которую IDE использует для базы пакетов. Когда вы создаете файл jar из IDE, он удаляет папку src, и в корневой папке есть пакеты.

т.е. в eclipse src / com.blah.blah после создания файла jar структура становится com.blah.blah

Конечно, я предполагаю, что InputFlatFile правильно читает значение.

http://www.devdaily.com/blog/post/java/read-text-file-from-jar-file

...