android dom方式创建xml

阅读: 评论:0

android dom方式创建xml

android dom方式创建xml

 

android dom 解析xml方式文章中,简单介绍了dom解析xml的应用。今天在原文章的基础上,说一下android中dom创建xml的应用。

首先:创建的文件会放在/data/(当前包名)/files下面。

创建生成的xml文件如下所示:

 

[html]  view plain copy
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <classes>  
  3.     <group name="一年级" num="10">  
  4.         <person name="小明" age="7">  
  5.             <chinese>语文90</chinese>  
  6.             <english>英语80</english>  
  7.         </person>  
  8.     </group>  
  9. </classes>  

可以直接用android dom 解析xml方式文章中方法去解析,注意修改一点:

 

 

[html]  view plain copy
  1. // 从assets文件夹下获取文件 转换成输入流  
  2. //          inStream = Resources().getAssets().open(fileName);  
  3. //          doc = docBuilder.parse(inStream);  
  4.             InputStream fosStream = openFileInput(fileName);  
  5.             doc = docBuilder.parse(fosStream);  

同时,fileName取得方法:

 

 

[html]  view plain copy
  1. String[] fileNames = getFilesDir().list();  
[html]  view plain copy
  1. String fileName = fileNames[0];  

解析出来的结果是

 


以下是创建xml文件的代码:

 

[html]  view plain copy
    1. private void createXmlFile(){  
    2.           
    3.         try {  
    4.             DocumentBuilderFactory factory = DocumentBuilderFactory  
    5.                     .newInstance();  
    6.             DocumentBuilder builder = wDocumentBuilder();  
    7.             Document doc  = wDocument();  
    8.             //创建xml根元素  
    9.             Element rootEle = ateElement("classes");  
    10.             doc.appendChild(rootEle);  
    11.             //创建xml二级元素  
    12.             Element groupEle = ateElement("group");  
    13.             groupEle.setAttribute("name", "一年级");  
    14.             groupEle.setAttribute("num", "10");  
    15.             //创建xml person元素  
    16.             Element personEle = ateElement("person");  
    17.             //personEle 的属性和属性值  
    18.             personEle.setAttribute("name", "小明");  
    19.             personEle.setAttribute("age", "7");  
    20.             //创建personELe的子元素  
    21.             Element chinese = ateElement("chinese");  
    22.             //创建personELe的子元素的值  
    23.             chinese.ateTextNode("语文90"));  
    24.             personEle.appendChild(chinese);  
    25.             Element english = ateElement("english");  
    26.             english.ateTextNode("英语80"));  
    27.             personEle.appendChild(english);  
    28.               
    29.             groupEle.appendChild(personEle);  
    30.             rootEle.appendChild(groupEle);  
    31.               
    32.             TransformerFactory tf = wInstance();  
    33.             Transformer transformer = tf.newTransformer();  
    34.               
    35.             DOMSource source = new DOMSource(doc);  
    36.             transformer.setOutputProperty(OutputKeys.ENCODING, "utf-8");  
    37.             transformer.setOutputProperty(OutputKeys.INDENT, "no");  
    38.             //创建文件存放在 /data/x(当前包)/files   
    39.             FileOutputStream fos = openFileOutput(&#l", Context.MODE_PRIVATE);  
    40.             //创建文件存放在 /data/x(当前包)/cache  
    41. //          FileOutputStream fos = Op  
    42.             PrintWriter pw = new PrintWriter(fos);  
    43.             StreamResult result = new StreamResult(pw);  
    44.             ansform(source, result);  
    45.               
    46.             System.out.println("生成XML文件成功!");  
    47.         } catch (ParserConfigurationException e) {  
    48.             System.out.Message());  
    49.         } catch (TransformerConfigurationException e) {  
    50.             System.out.Message());  
    51.         } catch (TransformerException e) {  
    52.             System.out.Message());  
    53.         } catch (FileNotFoundException e) {  
    54.             System.out.Message());  
    55.         }  
    56.           
    57.     }  

本文发布于:2024-02-01 03:16:48,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170672863433485.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:方式   android   dom   xml
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23