如何编写/读取/删除位于资源文件夹中的文本文件的内容?

时间:2015-12-24 04:53:38

标签: java text-files editing

我的资源文件夹中有一个文本文件,我需要能够读取/删除/添加文本。我相信我必须使用追加,所以我试过了。

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

如果有人能让我对这个主题有一些清晰的认识。三江源!

2 个答案:

答案 0 :(得分:0)

这对我很有用:

您应该将文本文件添加到原始文件夹。如果资源目录中不存在原始文件夹,请创建一个。然后,为了访问它并编写或编辑它,请使用:

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

然后为了从文件中读取,你应该这样做

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

答案 1 :(得分:0)

正在自动将一条前导斜杠添加到您的路径中 - /C:/Users/Ben/workspace/Eve/bin/org/me/Testing/resources/SearchList.txt

答案中提出了很多解决方案Java NIO file path issue

使用上述任何答案作为您的解决方案。

此外,对于打算在jar中的文件,您需要使用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