我想将一些代码移植到 Android(更具体地说是 XML 解析器 net.xqhs.util.XML ),为此我需要使用 RandomAccessFile 从 Assets 或原始文件夹中读取文件。
我该怎么做? 谢谢!
最佳答案
抱歉,这是不可能的。 Assets 和资源都不是 Android 设备上的文件,因此虽然您可以在它们上获取 InputStream
,但不能在它们上创建 RandomAccessFile
。
您的选择是:
使用任何可用的 Android XML 解析器获取
InputStream
。 Android 中包含三个可处理流的 XML 解析器(DOM、SAX、XmlPullParser
)。我希望 most of the third-party XML parsers还支持InputStream
。将 Assets 或原始资源(例如,使用
InputStream
)复制到本地文件。然后,为该文件创建一个RandomAccessFile
。
关于来自 Assets 目录的 Android RandomAccessFile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36019292/