Установка каталога путей в программе чтения файлов - PullRequest
0 голосов
/ 12 октября 2010

Я работаю с текстовыми файлами на Java.В Ubuntu 10.
Но у меня возникли проблемы с путем dir.

Пример:

saveFile("textFile.txt","abc");

Эта абстрактная функция в основном помещает "abc" в"textFile.txt".

Я компилирую этот файл и создаю файл jar (используя NetBeans).
Когда я запускаю приложение и вызываю saveFile("textFile.txt","abc"), textFile.txt сохраняется в \ home,Я не хочу этогоЯ хочу, чтобы textFile.txt перешел к pathDir внутри файла jar.

Как мне записать в этот файл таким же образом?

Ответы [ 2 ]

1 голос
/ 12 октября 2010

При чтении ресурсов из файла JAR нельзя использовать API File. Вместо этого вы используете Class.getResourceAsStream(), например:

reader = new InputStreamReader(MyClass.class.getResourceAsStream(
    "/apathdir/textFile.txt"), "UTF-8");

Обратите внимание, как указывается кодировка. FileReader этого не допускает, поэтому обычно этого следует избегать.

0 голосов
/ 12 октября 2010

Хочу знать, если fileName = "textFile.txt", какой путь к каталогу для этого файла?

Если вы используете только пустое имя файла (без указания каталога), JVM будет искать файл в текущем каталоге процесса JVM;обычно это каталог, из которого вы запускали JVM (исполняемый файл java).

как мне установить /apathdir/textFile.txt ?.apathdir - это каталог, который находится внутри jar-файла.Я попытался: fileName = "/apathdir/textFile.txt", но не работает.

Если вы хотите загрузить файл из файла JAR, вы не можете загрузить его, используя FileReader,Вам нужно использовать ClassLoader.getSystemResourceAsStream() (или Class.getResourceAsStream).См., Например, эту статью для объяснения:

http://www.devx.com/tips/Tip/5697

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...