博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java 生成xml文件
阅读量:6280 次
发布时间:2019-06-22

本文共 2629 字,大约阅读时间需要 8 分钟。

这里也使用的是import org.w3c.dom.Document;

 

首先创建document对象,给该对象赋值,然后将document对象使用transformer的transformer转换方法转换成文件或者其他类型进行想要的操作。

1、创建DocumentBuilder对象

DocumentBuilderFactory documentBuilderFactory=DocumentBuilderFactory.newInstance();            DocumentBuilder    documentBuilder = documentBuilderFactory.newDocumentBuilder();

2、创建Document对象并赋值

DocumentBuilder的api:http://download.oracle.com/technetwork/java/javase/6/docs/zh/api/javax/xml/parsers/DocumentBuilder.html#parse%28java.lang.String%29

Document document=documentBuilder.parse(uri);//我这里使用的是parse方法解析uri地址的文件内容,将该内容转换成字符串
//这里使用的是新建空的document,然后给document填充内容,发现document的子节点都是使用appendChildNode()一层层加上去的,控件使用的都是document 。createElement得到Element对象。setTextContent给标签内容赋值 Document document=documentBuilder.newDocument();                        Element root=document.createElement("language");            root.setAttribute("cat","it");            Element lan1=document.createElement("lan");            lan1.setAttribute("id", "1");            Element name1=document.createElement("name");                         Element ide1=document.createElement("ide");            name1.setTextContent("java");            ide1.setTextContent("eclipes");            Element lan2=document.createElement("lan");            lan2.setAttribute("id", "2");            Element name2=document.createElement("name");            Element ide2=document.createElement("ide");            name2.setTextContent("Switf");            ide2.setTextContent("x-code");            Element lan3=document.createElement("lan");            lan1.setAttribute("id", "3");            Element name3=document.createElement("name");            Element ide3=document.createElement("ide");            name3.setTextContent("c#");            ide1.setTextContent("visual");            lan1.appendChild(name1);            lan1.appendChild(ide1);            lan2.appendChild(name2);            lan2.appendChild(ide2);            lan3.appendChild(name3);            lan3.appendChild(ide3);            root.appendChild(lan1);            root.appendChild(lan2);            root.appendChild(lan3);            document.appendChild(root);

 

创建document空对象并赋值例子:

 

3、转换document成xml文件

/* 生成transformer对象 */ TransformerFactory factory=TransformerFactory.newInstance();Transformer transformer=factory.newTransformer(); StringWriter writer=new StringWriter(); /*字符输出流*/ transformer.transformer(new DOMSource(document),new StreamResult(writer));//将document中的值转换到输出流中 System.out.println(writer.toString()); File xmlfile=new File("newxml.xml"); transformer.transformer(new DOMSource(document),new StreamResult(xmlfile));//将document中的值写入file文件中,自动完成file文件的实体

 

转载地址:http://cryva.baihongyu.com/

你可能感兴趣的文章
a2enmod和a2dismod 这两个命令得记一下
查看>>
NDK error Error 126 make: *** Deleting file
查看>>
CentOS6.5高可用集群LVS+Keepalived(DR模式)
查看>>
软件定义存储重在应用交付
查看>>
为何公司宁愿高薪招新人 也不加薪留老员工?
查看>>
LAMP仍然是Web开发最流行的选择吗?
查看>>
IT专家的十大热门领域
查看>>
编译原理--语法推导树
查看>>
BI笔记之---BI通用流程zz
查看>>
幂等性 个人理解及应用
查看>>
java 输入
查看>>
大文件排序
查看>>
Android TabHost的使用
查看>>
使用loadrunner进行服务器性能测试(winsocket)
查看>>
C Programming Notes
查看>>
使用OLE DB数据提供程序访问MSSQL数据库
查看>>
概要设计怎么写?
查看>>
CodeIgniter时区设置
查看>>
UIViewController与UIView的关系
查看>>
ASP.NET Web开发框架之五 设计时支持,代码生成,数据字典 ExtAspNet控件扩展
查看>>