2015-12-24 1 views
0

У меня есть текстовый файл в моей папке ресурсов, и мне нужно иметь возможность читать/удалять/добавлять текст. Я считаю, что мне нужно использовать append, поэтому я попробовал это.Как написать/прочитать/удалить содержимое текстового файла, находящегося в папке моих ресурсов?

Files.write(Paths.get(Testing.class.getResource("/testresources/SearchList.txt").getPath()) 
, "the text".getBytes(), StandardOpenOption.APPEND); 

Это дает мне назад

Exception in thread "main" java.nio.file.InvalidPathException: Illegal char <:> at index 2: /C:/Users/Ben/workspace/Eve/bin/org/me/Testing/resources/SearchList.txt

Если кто-нибудь может мне надо некоторую ясность по этому вопросу, что было бы здорово. Спасибо!

+0

Похоже, он жалуется на 'C: /', какой тип ОС вы? Окна? – dolan

+0

Да, я на выигрыше 7 – Bioflame

+0

ya. Я думаю, вы должны быть в порядке, если этот путь разрешен для '/ Users/Ben/workspace/Eve/bin/org/me/Testing/resources/SearchList.txt' без' C:/' – dolan

ответ

0

Это работает для меня хорошо:

Вы должны добавить текстовый файл в папку сырой. Если исходная папка не существует в вашем каталоге ресурсов, создайте ее. А затем, чтобы получить к нему доступ и писать или редактировать его, используйте:

OutputStream outputStream=getResources().openRawResource(R.raw.YourTextFile); 

то для чтения из файла, вы должны сделать это

InputStream inputStream=getResources().openRawResource(R.raw.YourTextFile); 
+0

. Как вы создаете необработанную папку? Я использую eclipse. – Bioflame

+0

Я давно не использовал eclipse, но думаю, когда вы щелкните правой кнопкой мыши по папке ресурсов, она должна дать возможность сделать это –

0

Ведущий слэш быть автоматически добавляется на вашем пути - /C:/Users/Ben/workspace/Eve/bin/org/me/Testing/resources/SearchList.txt

было предложено здесь много решений в ответах, Java NIO file path issue

Используйте любой из упомянутых ответов в качестве своего решения.

Кроме того, для файлов предназначено быть в банке, Вы должны использовать Paths метод public static Path get(URI uri) вместо public static Path get(String first,String... more) См How to get a path to a resource in a Java JAR file

+0

. Я собираюсь сделать этот файл jar и использовать его на нескольких машинах, «Думаю, что прямой путь к папке будет работать. – Bioflame

+0

Я отредактировал свой ответ, вам нужно использовать uri, если файл предназначен для размещения в банке –

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