下面這段xml文件內容是咱們的需求。java
1. <?xml version='1.0' encoding='utf-8' standalone='no' ?> android
2. <persons> app
3. <person key="one"> ide
4. <name>zhangsan</name> spa
5. <age>26</age> .net
6. </person> orm
7. <person key="two"> xml
8. <name>lisi</name> blog
9. <age>25</age> utf-8
10. </person>
11. </persons>
下面是組裝xml文件內容的代碼。
[java] view plaincopy
1. import org.xmlpull.v1.XmlSerializer;
2. import android.app.Activity;
3. import android.os.Bundle;
4. import android.util.Log;
5. import android.util.Xml;
6. import java.io.IOException;
7. import java.io.StringWriter;
8.
9. public class MainActivity extends Activity {
10.
11. public static final String TAG = "MainActivity";
12.
13. @Override
14. public void onCreate(Bundle savedInstanceState) {
15. super.onCreate(savedInstanceState);
16. setContentView(R.layout.activity_main);
17.
18. Log.d(TAG, createXMLData());
19. }
20.
21. /**
22. * create xml data
23. *
24. * @return
25. */
26. protected String createXMLData() {
27.
28. XmlSerializer serializer = Xml.newSerializer();
29. StringWriter stringWriter = new StringWriter();
30.
31. try {
32. serializer.setOutput(stringWriter);
33. serializer.startDocument("utf-8", false);
34. // start persons
35. serializer.startTag(null, "persons");
36.
37. // one
38. serializer.startTag(null, "person");
39. serializer.attribute(null, "key", "one");
40.
41. serializer.startTag(null, "name");
42. serializer.text("zhangsan");
43. serializer.endTag(null, "name");
44.
45. serializer.startTag(null, "age");
46. serializer.text("26");
47. serializer.endTag(null, "age");
48.
49. serializer.endTag(null, "person");
50.
51. // two
52. serializer.startTag(null, "person");
53. serializer.attribute(null, "key", "two");
54.
55. serializer.startTag(null, "name");
56. serializer.text("lisi");
57. serializer.endTag(null, "name");
58.
59. serializer.startTag(null, "age");
60. serializer.text("25");
61. serializer.endTag(null, "age");
62.
63. serializer.endTag(null, "person");
64.
65. // end persons
66. serializer.endTag(null, "persons");
67.
68. serializer.endDocument();
69.
70. } catch (IOException e) {
71. e.printStackTrace();
72. }
73. return stringWriter.toString();
74. }
75. }