2016-05-03 11 views
-1

При использовании FileOutputStream для вывода объекта в папку внутри работоспособной баночки вы получите FileNotFoundExceptionFileOutputStream внутри работоспособная баночки бросания FileNotFoundException если путь содержит папку

примера код, который будет бросать FileNotFoundException (будь то каталог или файл существующих или нет):

 ObjectOutputStream wf = new ObjectOutputStream(new FileOutputStream("res/followers.txt")); 
     wf.writeObject(crntFollowers); 
     wf.flush(); 
     wf.close(); 
     writeSettingFollowers(crntFollowers.size()); 

Однако при использовании того же кода без добавления «папку» в пути вы не получите FileNotFoundException но файла обыкновение быть созданы на всех

пример кода, который не будет бросать FileNotFoundException:

 ObjectOutputStream wf = new ObjectOutputStream(new FileOutputStream("followers.txt")); 
     wf.writeObject(crntFollowers); 
     wf.flush(); 
     wf.close(); 
     writeSettingFollowers(crntFollowers.size()); 

Оба фрагмента кода работать при компиляции в Eclipse, но не как работоспособный баночку, я думаю, что это связано с различным Pathing, но я не знаю, как это исправить ,

Как я могу переписать объект в папку внутри исполняемого банку, не получив FileNotFoundException и файл также созданный?

ответ

0

Вы ошибаетесь.

  1. Вы не можете создавать файлы внутри запущенных JAR с FileOutputStream или в любом другом виде или форме.
  2. Файл будет создан, если нет исключения, но в текущем рабочем каталоге, а не в файле JAR.
+0

Спасибо, я изменил свой код, и он работает сейчас :) – durchstarter

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

  • Нет связанных вопросов^_^