2011-09-29 80 views
2

我可以訪問放置在項目文件夾(例如「資產」)中的XML文件,以打開並從文件中讀取數據。在Android項目中訪問資產文件夾的方式是什麼?

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); 
DocumentBuilder docBuilder = factory.newDocumentBuilder(); 
InputStream iS = this.getAssets().open("myFile.xml"); 
Document doc = docBuilder.parse(iS); 

但是,如果我想編輯文件,我找不到保存它的路徑。

TransformerFactory transfac = TransformerFactory.newInstance(); 
      Transformer trans = transfac.newTransformer(); 
       //create string from xml tree 
       StringWriter sw = new StringWriter(); 
       StreamResult result = new StreamResult(sw); 
       DOMSource source = new DOMSource(doc); 
       trans.transform(source, result); 
       String xmlString = sw.toString(); 
       OutputStream f0; 
      byte buf[] = xmlString.getBytes(); 
      **f0 = new FileOutputStream("/assets/wines.xml");** 
      //f0 = new FileOutputStream("file:///assets/wines.xml"); 
      for(int i=0;i<buf .length;i++) { 
       f0.write(buf[i]); 
      } 
      f0.close(); 
      buf = null; 

我得到總是FileNotFoundException在行:

f0 = new FileOutputStream("/assets/wines.xml"); 

任何想法?謝謝!

回答

1

如果您要將edit or write文件更改爲assets or raw folder。我想這是不可能的。 It cannot be done

+0

非常感謝! –

0

Bettery嘗試將其保存到SD卡或內部存儲

使用File sdDir = [Environment.getExternalStorageDirectory()][1];獲得SD卡路徑。

而且不要忘了給許可

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
+0

問題解決!!! ,, –

+0

非常感謝你!!!! –

相關問題