您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關android中dom方式創建xml的示例的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
android中dom創建xml
首先:創建的文件會放在/data/data/cn.com.xxx(當前包名)/files下面。
創建生成的xml文件如下所示:
<?xml version="1.0" encoding="utf-8"?> <classes> <group name="一年級" num="10"> <person name="小明" age="7"> <chinese>語文90</chinese> <english>英語80</english> </person> </group> </classes>
可以直接用android dom 解析xml方式文章中方法去解析,注意修改一點:
// 從assets文件夾下獲取文件 轉換成輸入流 // inStream = this.getResources().getAssets().open(fileName); // doc = docBuilder.parse(inStream); InputStream fosStream = openFileInput(fileName); doc = docBuilder.parse(fosStream);
同時,fileName取得方法:
String[] fileNames = getFilesDir().list();
String fileName = fileNames[0];
解析出來的結果是
以下是創建xml文件的代碼:
private void createXmlFile(){ try { DocumentBuilderFactory factory = DocumentBuilderFactory .newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document doc = builder.newDocument(); //創建xml根元素 Element rootEle = doc.createElement("classes"); doc.appendChild(rootEle); //創建xml二級元素 Element groupEle = doc.createElement("group"); groupEle.setAttribute("name", "一年級"); groupEle.setAttribute("num", "10"); //創建xml person元素 Element personEle = doc.createElement("person"); //personEle 的屬性和屬性值 personEle.setAttribute("name", "小明"); personEle.setAttribute("age", "7"); //創建personELe的子元素 Element chinese = doc.createElement("chinese"); //創建personELe的子元素的值 chinese.appendChild(doc.createTextNode("語文90")); personEle.appendChild(chinese); Element english = doc.createElement("english"); english.appendChild(doc.createTextNode("英語80")); personEle.appendChild(english); groupEle.appendChild(personEle); rootEle.appendChild(groupEle); TransformerFactory tf = TransformerFactory.newInstance(); Transformer transformer = tf.newTransformer(); DOMSource source = new DOMSource(doc); transformer.setOutputProperty(OutputKeys.ENCODING, "utf-8"); transformer.setOutputProperty(OutputKeys.INDENT, "no"); //創建文件存放在 /data/data/cn.xxx.xxx(當前包)/files FileOutputStream fos = openFileOutput("Dom.xml", Context.MODE_PRIVATE); //創建文件存放在 /data/data/cn.xxx.xxx(當前包)/cache // FileOutputStream fos = Op PrintWriter pw = new PrintWriter(fos); StreamResult result = new StreamResult(pw); transformer.transform(source, result); System.out.println("生成XML文件成功!"); } catch (ParserConfigurationException e) { System.out.println(e.getMessage()); } catch (TransformerConfigurationException e) { System.out.println(e.getMessage()); } catch (TransformerException e) { System.out.println(e.getMessage()); } catch (FileNotFoundException e) { System.out.println(e.getMessage()); } }
感謝各位的閱讀!關于“android中dom方式創建xml的示例”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。