java操纵xml_Java 操纵XML之创建XML文件

1 packagecn.com.zfc.lesson26.xml;2

3 importjava.io.File;4

5 importjavax.xml.parsers.DocumentBuilder;6 importjavax.xml.parsers.DocumentBuilderFactory;7 importjavax.xml.transform.Transformer;8 importjavax.xml.transform.TransformerFactory;9 importjavax.xml.transform.dom.DOMSource;10 importjavax.xml.transform.stream.StreamResult;11

12 importorg.w3c.dom.Attr;13 importorg.w3c.dom.Document;14 importorg.w3c.dom.Element;15 importorg.w3c.dom.Text;16

17 /**

18 * 使用JAVA DOM PARSER:创建 XML 文件19 *20 *@authorzfc21 * @date 2017年12月7日 下午6:11:2722 */

23 public classCreateXmlFile {24 public static voidmain(String[] args) {25

26 try{27 //1、创建 DocumentBuilderFactory 对象

28 DocumentBuilderFactory documentBuilderFactory =DocumentBuilderFactory.newInstance();29 //2、创建 DocumentBuilder 对象

30 DocumentBuilder documentBuilder =documentBuilderFactory.newDocumentBuilder();31 //3、创建 Document 对象

32 Document document =documentBuilder.newDocument();33 //4、创建元素,创建一个根元素

34 Element students = document.createElement("students");35 //5、将根元素添加到文档对象中

36 document.appendChild(students);37

38 //6、创建第一个学生

39 Element student = document.createElement("student");40 //创建一个属性对象

41 Attr attr = document.createAttribute("id");42 //给属性设值

43 attr.setValue("student1");44 //将属性添加到 student 结点上

45 student.setAttributeNode(attr);46 //创建 name 子结点

47 Element name = document.createElement("name");48 //创建文本结点

49 Text nameValue = document.createTextNode("Tom");50 //将文本结点添加到 name 结点上

51 name.appendChild(nameValue);52 //将 name 结点添加到 student 结点上

53 student.appendChild(name);54 //创建 sex 结点

55 Element sex = document.createElement("sex");56 //创建 文本结点

57 Text sexValue = document.createTextNode("Female");58 //将 sexValue 添加到 sex 结点上

59 sex.appendChild(sexValue);60 //将 sex 结点添加到 student 结点上

61 student.appendChild(sex);62 //将 student 结点添加到 students 结点中

63 students.appendChild(student);64

65 //7、添加第二个学生

66 student = document.createElement("student");67 //创建一个属性对象

68 attr = document.createAttribute("id");69 //给属性设值

70 attr.setValue("student2");71 //将属性添加到 student 结点上

72 student.setAttributeNode(attr);73 //创建 name 子结点

74 name = document.createElement("name");75 //创建文本结点

76 nameValue = document.createTextNode("Lucy");77 //将文本结点添加到 name 结点上

78 name.appendChild(nameValue);79 //将 name 结点添加到 student 结点上

80 student.appendChild(name);81 //创建 sex 结点

82 sex = document.createElement("sex");83 //创建 文本结点

84 sexValue = document.createTextNode("Male");85 //将 sexValue 添加到 sex 结点上

86 sex.appendChild(sexValue);87 //将 sex 结点添加到 student 结点上

88 student.appendChild(sex);89 //将 student 结点添加到 students 结点中

90 students.appendChild(student);91

92 //8、创建 TransformerFactory 对象

93 TransformerFactory transformerFactory =TransformerFactory.newInstance();94 //9、创建 Transformer 对象

95 Transformer transformer =transformerFactory.newTransformer();96 //10、创建 DOMSource 对象

97 DOMSource domSource = newDOMSource(document);98 //11、创建 File 对象

99 String filePath = "I:\\code_workspace\\JavaSE_workspace\\JavaSE\\src\\cn\\com\\zfc\\lesson26\\xml\\CreateXmlFile.xml";100 File file = newFile(filePath);101 //12、创建 StreamResult 对象

102 StreamResult reStreamResult = newStreamResult(file);103 transformer.transform(domSource, reStreamResult);104 //输出测试结果

105 StreamResult consoleResult = newStreamResult(System.out);106 transformer.transform(domSource, consoleResult);107

108 } catch(Exception e) {109 e.printStackTrace();110 }111

112 }113 }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值