我希望能够读取Assets中的文件内容并将其作为字符串处理。例如,一个位于src/main/assets/
目录下的文本文件。
原始问题
我发现这个问题大多被用作“常见问题解答”,以便阅读Assets文件,因此我总结了上面的问题。以下是我的原始问题。
我试图将一个Assets文件读取为字符串。我在我的assets文件夹中有一个名为data.opml的文件,并想将其作为字符串读取。
我尝试过一些方法:
AssetFileDescriptor descriptor = getAssets().openFd("data.opml");
FileReader reader = new FileReader(descriptor.getFileDescriptor());
还有:
InputStream input = getAssets().open("data.opml");
Reader reader = new InputStreamReader(input, "UTF-8");
但是没有成功,因此需要一个完整的例子以便理解。
protected static void importFromInputStream()
方法更改为public
,然后使用从getAssets().open()
获取的InputStream
。importFromFile()
需要一个文件名,不能直接用于资产。 - CommonsWareOPML
类中的importFromFile()
方法。但我没有告诉过你这样做。请回滚到原始文件状态。将文本编辑光标直接放置在protected static void importFromInputStream()
方法中protected
关键字中的d
字母右侧,按下退格键 8 次。然后输入ublic
。这将把protected
关键字更改为public
。保存文件。现在你可以在自己的代码中使用刚刚修改为公共方法的importFromInputStream()
方法来替换之前想使用的importFromFile()
方法。 - CommonsWare