2016-03-15 80 views

回答

2

這是不可能的,對不起。資產和資源都不是Android設備上的文件,因此您可以在其上獲得InputStream,但無法在其上創建RandomAccessFile

你的選擇是:

  1. 使用任何採取InputStream爲Android現有的XML解析器。有三個XML解析器是Android的一部分(DOM,SAX,XmlPullParser),可以使用流。我期望most of the third-party XML parsers也支持InputStream

  2. 將資產或原始資源(例如,使用InputStream)複製到本地文件。然後,爲該文件創建一個RandomAccessFile

+0

你能詳細請第二個選項,我怎麼複製文件在本地 –

+0

@IonutCosminMihai:對於資產,使用'AssetManager'和'開放()'對資產得到一個'InputStream'。使用類似'new FileOutputStream(new File(getFilesDir(),'something.xml'))'在你想要的文件上得到'OutputStream'。然後,使用標準Java I/O從'InputStream'複製到'OutputStream'。 – CommonsWare