我只想从 sdcard 中读取 xml 文件,并想在其中添加一些新数据。然后我必须将它写入sdcard。我该如何实现它。任何帮助将不胜感激。
问问题
1562 次
2 回答
0
此处给出了读取和写入 XML 文件的示例。你可以使用google获得很多。然而,两个重要的类是XmlSerializer
和XmlPullParser
。一个简单的 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 找到一个。由于您要在 sdCard 中读取/写入文件,请不要忘记调用Environment.getExternalStorageDirectory().getAbsolutePath()
以获取外部存储目录的路径。在这里看一个简单的例子。
不要忘记将以下行添加到您的清单文件中,否则不会有任何效果。
如果你不让那个工作。用具体问题更新您的问题。
于 2013-03-21T08:00:31.503 回答
0
你只是为了得到文件使用
File file = new File(Environment.getExternalStorageDirectory()
+ "your_path/your_xml.xml");
在您可以进行 xml 解析以读取该文件之后。
于 2013-03-21T08:05:06.923 回答