2013-03-21 20 views
0

我只想從SD卡讀取xml文件,並希望向其中添加一些新數據。然後我必須把它寫入SD卡。我怎樣才能實現它。 任何幫助將不勝感激。如何從SD卡中讀取現有的xml文件並向其中添加新數據

+0

Iam能夠讀取和寫入數據,但IAM無法將數據追加到已存在的XML文件。您可以幫我:) – 2016-11-03 11:44:19

回答

0

讀取和寫入XML文件示例給出here。而且你可以使用google獲得大量。然而,這兩個重要的類別是XmlSerializerXmlPullParser。一個簡單的例子XmlSerializer的是: -

public static String CreateXMLString() throws IllegalArgumentException, IllegalStateException, IOException 
{ 
    XmlSerializer xmlSerializer = Xml.newSerializer(); 
     StringWriter writer = new StringWriter(); 

    xmlSerializer.setOutput(writer); 

    //Start Document 
    xmlSerializer.startDocument("UTF-8", true); 
    xmlSerializer.setFeature("http://xmlpull.org/v1/doc/features.html#indent-output", true); 
    //Open Tag <file> 
    xmlSerializer.startTag("", "file"); 

    XmlSerializer tempXml = Xml.newSerializer(); 
    StringWriter tempWriter = new StringWriter(); 


    xmlSerializer.startTag("", "something"); 
    xmlSerializer.attribute("", "ID", "000001"); 

    xmlSerializer.startTag("", "name"); 
    xmlSerializer.text("CO"); 
    xmlSerializer.endTag("", "name"); 

    xmlSerializer.endTag("", "something"); 



    //end tag <file> 
    xmlSerializer.endTag("", "file"); 
    xmlSerializer.endDocument(); 

    return writer.toString(); 
} 

同樣你可以找到一個XmlPullParser爲好。既然你想讀/寫SD卡中的文件,不要忘記調用Environment.getExternalStorageDirectory().getAbsolutePath()來獲取外部存儲目錄的路徑。看一個簡單的例子here

不要忘記在清單文件中添加以下行,而沒有任何東西會起作用。

如果你沒有得到那個工作。用特定問題更新您的問題。

+0

@Aju upvotes expected – aProgrammer 2013-07-16 13:37:05

0

你只是爲了讓使用

File file = new File(Environment.getExternalStorageDirectory() 
       + "your_path/your_xml.xml"); 

你可以做XML解析讀取該文件後,文件。

相關問題