2013-06-07 2 views
0

Так в настоящее время мои папки проекта NetBeans выглядит следующим образом:Как получить файл txt в файле netbeans build jar?

  • Block_Breaker < --Project
    • сборки
    • расстояние
      • Block_Breaker.jar
    • nbproject
    • ЦСИ
      • packageONE
      • packageTWO
        • data.txt
    • manifest.mf
    • applet.policy
    • build.xml

Я хочу знать, как я могу получить файл data.txt в packageTWO (когда я запускаю Block_Breaker через файл jar, а не netbeans). Обычно при запуске через NetBeans следующий код будет работать:

FileWriter x=new FileWriter("src/packageTWO/data.txt"); 

PrintWriter pr=new PrintWriter(x); 

Но если я запустить банку файл, который создали NetBeans он не работает.

ответ

0

Это потому, что ваш файл .jar не включает в себя папку с именем src/

Пожалуйста, используйте ClassLoader.getResource для загрузки ресурсов.

2

Вы не можете записать этот файл после его упаковки в файл jar.

Но чтение еще возможно с помощью одного из следующих действий:

<YourClass>.class.getClassLoader().getResourceAsStream("packageTWO/data.txt"); 
// or 
this.getClass().getResourceAsStream("/packageTWO/data.txt"); 

ведьма дает вам InputStream ведьма, можно использовать для извлечения содержимого файла.

Если вам необходимо прочесть этот файл, самый простой способ - не упаковать его в банку, а иметь отдельную часть в файловой системе.

Больше информации о getResourceAstream в javadoc

+0

Да я должен был знать, что я извиняюсь за то, что такой тупица. –

+0

@ user1952989 хе, не будьте так суровы на себе ;-) – A4L

Смежные вопросы