Android 台灣中文網

標題: Android創建XML文檔教程 [打印本頁]

作者: 暗桌之光    時間: 2011-6-13 11:51
標題: Android創建XML文檔教程
我們先將writeXml()產生的字符串輸出 ,看是否是按照我們設計的那樣,使用Log.v(「XML」, writeXml())輸出調試信息。運行Android程序,在DDMS中查看程序輸出的調試信息,如何查看調試信息請閱讀Android DDMS如何使用?下面,我們就直接來看個具體的例子來說明,如何使用XmlSerializer。
  1. private String writeXml(){
  2. XmlSerializer serializer = Xml.newSerializer();
  3. StringWriter writer = new StringWriter();
  4. try{
  5. serializer.setOutput(writer);

  6. // <?xml version=」1.0〞 encoding=」UTF-8〞 standalone=」yes」?>
  7. serializer.startDocument(」UTF-8〞,true);

  8. // <blog number=」1〞>
  9. serializer.startTag(」",」blog」);
  10. serializer.attribute(」",」number」,String.valueOf(1));

  11. //<message data=」2009-09-23〞>
  12. serializer.startTag(」",」message」);
  13. serializer.attribute(」",」date」,」2009-09-23〞);

  14. // <title>Android XML</title>
  15. serializer.startTag(」",」title」);
  16. serializer.text(」Android XML」);
  17. serializer.endTag(」",」title」);

  18. // <url>http://www.moandroid.com/?p=508 </url>
  19. serializer.startTag(」",」url」);
  20. serializer.text(」http://www.moandroid.com/?p=508〞);
  21. serializer.endTag(」",」url」);

  22. //</message>
  23. serializer.endTag(」",」message」);
  24. // </blog>
  25. serializer.endTag(」",」blog」);
  26. serializer.endDocument();
  27. return writer.toString();
  28. }
  29. catch(Exception e)
  30. {
  31. throw new RuntimeException(e);
  32. }
  33. }
複製代碼
輸出的字符串如下:
  1. <?xml version=」1.0〞 encoding=」UTF-8〞 standalone=」yes」?>
  2. <blog number=」1〞>
  3. <message data=」2009-09-23〞>
  4. <title>Android XML</title>
  5. <url>http://www.moandroid.com/?p=508</url>
  6. </message>
  7. </blog>
複製代碼
看了運行的結果,對於上面代碼的功能,估計大家就明白了,不再這裡詳細解析。
下面,進一步將字符串寫入文件 ,代碼如下:
  1. public boolean Write(String path,String txt)
  2. {
  3. try
  4. {
  5. OutputStream s = openFileOutput(path,MODE_PRIVATE);
  6. OutputStreamWriter sw=new OutputStreamWriter(os);
  7. osw.write(txt);
  8. osw.close();
  9. os.close();
  10. }
  11. catch(FileNotFoundException e)
  12. {
  13. return false;
  14. }
  15. catch(IOException e)
  16. {
  17. return false;
  18. }
  19. return true;
  20. }
  21. }
複製代碼
在onCreate()中增加如下代碼:Write(」blog.xml」,writeXml())。運行程序,打開DDMS查看寫入的XML文檔,文件存放在data/data/{package}/files文件夾下,如下:

a1.jpg
登錄/註冊後可看大圖