1
我想將一些代碼移植到Android(更特別的是XML解析器net.xqhs.util.XML),以便我需要使用RandomAccessFile從資產或原始文件夾讀取文件。來自Assets目錄的Android RandomAccessFile
我該怎麼做? 謝謝!
我想將一些代碼移植到Android(更特別的是XML解析器net.xqhs.util.XML),以便我需要使用RandomAccessFile從資產或原始文件夾讀取文件。來自Assets目錄的Android RandomAccessFile
我該怎麼做? 謝謝!
這是不可能的,對不起。資產和資源都不是Android設備上的文件,因此您可以在其上獲得InputStream
,但無法在其上創建RandomAccessFile
。
你的選擇是:
使用任何採取InputStream
爲Android現有的XML解析器。有三個XML解析器是Android的一部分(DOM,SAX,XmlPullParser
),可以使用流。我期望most of the third-party XML parsers也支持InputStream
。
將資產或原始資源(例如,使用InputStream
)複製到本地文件。然後,爲該文件創建一個RandomAccessFile
。
你能詳細請第二個選項,我怎麼複製文件在本地 –
@IonutCosminMihai:對於資產,使用'AssetManager'和'開放()'對資產得到一個'InputStream'。使用類似'new FileOutputStream(new File(getFilesDir(),'something.xml'))'在你想要的文件上得到'OutputStream'。然後,使用標準Java I/O從'InputStream'複製到'OutputStream'。 – CommonsWare