在Android中把內容寫到XML文件中ide
saveXmlButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { List<StudentInfo> studentInfos = StudentInfo.initStudentInfos(); try { FileOutputStream os = openFileOutput(fileName, MODE_PRIVATE); //獲取XmlSerializer對象 XmlPullParserFactory factory = XmlPullParserFactory.newInstance(); org.xmlpull.v1.XmlSerializer xmlSerializer = factory.newSerializer(); //設置輸出流對象 xmlSerializer.setOutput(os, "utf-8"); /* * startDocument(String encoding, Boolean standalone)encoding表明編碼方式 * standalone 用來表示該文件是否呼叫其它外部的文件。 * 若值是 」true」 表示沒有呼叫外部規則文件,若值是 」false」 則表示有呼叫外部規則文件。默認值是 「yes」。 */ xmlSerializer.startDocument("utf-8", true); xmlSerializer.startTag("myNameSpace", "Students"); for (StudentInfo studentInfo : studentInfos) { xmlSerializer.startTag(null, "student"); xmlSerializer.attribute(null, "id", studentInfo.getId()+""); xmlSerializer.startTag(null, "name"); xmlSerializer.text(studentInfo.getName()); xmlSerializer.endTag(null, "name"); xmlSerializer.startTag(null, "address"); xmlSerializer.text(studentInfo.getAddress()); xmlSerializer.endTag(null, "address"); xmlSerializer.startTag(null, "phone"); xmlSerializer.text(studentInfo.getPhone()); xmlSerializer.endTag(null, "phone"); xmlSerializer.endTag(null, "student"); } xmlSerializer.endTag("myNameSpace", "Students"); xmlSerializer.endDocument(); os.close(); } catch (Exception e) { e.printStackTrace(); } } });