起首:建立的文件会放在/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的内容,更多相关内容请关注ki4网(www.ki4.cn)!