Java读取,生成XML文本,文件
来源:互联网 发布:单片机汇编语言 编辑:程序博客网 时间:2024/05/21 09:34
通过本类可以学到
1.读取并解析XML文件
2.写入XML格式内容,并生成XML文件
3.读取并解析XML格式的String
4.写入XML格式内容,并生成String
范例:
package com.qingrong.testXML;/** * Created by Administrator on 2015/3/8 0008. */import org.dom4j.*;import org.dom4j.io.SAXReader;import org.junit.Test;import java.io.IOException;import java.io.InputStream;import java.util.Iterator;import java.util.List;public class TestXML { @Test public void testXMLRead(){ try{// //将src下面的xml转换为输入流// InputStream inputStream = this.getClass().getResourceAsStream("/module03.xml");// //创建SAXReader读取器,专门用于读取xml// SAXReader saxReader = new SAXReader();// //根据saxReader的read重写方法可知,既可以通过inputStream输入流来读取,也可以通过file对象来读取// Document document = saxReader.read(inputStream); String xmlString = "<?xml version=\"1.0\" encoding=\"UTF-8\"?> " + "<modules id=\"123\"> " + " <module>这个是module标签的文本信息</module> " + " <module id=\"\"> " + " <name>oa</name> " + " <value>系统基本配置</value> " + " <descript>对系统的基本配置根目录</descript> " + " <module2>这个是子module2标签的文本信息</module2> " + " </module> " + " <module> " + " <name>管理配置</name> " + " <value>none</value> " + " <descript>管理配置的说明</descript> " + " <module id=\"106\"> " + " <name>系统管理</name> " + " <value>0</value> " + " <descript>Config</descript> " + " <module2 id=\"107\"> " + " <name>部门编号</name> " + " <value>20394</value> " + " <descript>编号</descript> " + " </module2> " + " </module> " + " </module> " + "</modules> "; Document document = DocumentHelper.parseText(xmlString);; Element rootElement = document.getRootElement(); if(rootElement.elements("module") != null ){ //因为第一个module标签只有内容没有子节点,直接.iterator()就java.lang.NullPointerException了, 所以需要分开实现 List<Element> elementList = rootElement.elements("module"); for (Element element : elementList) { if(!element.getTextTrim().equals("")){ System.out.println(element.getTextTrim()); }else{ Element nameElement = element.element("name"); System.out.println(nameElement.getName() + ":" + nameElement.getText()); Element valueElement = element.element("value"); System.out.println(valueElement.getName() + ":" + valueElement.getText()); Element descriptElement = element.element("descript"); System.out.println(descriptElement.getName() + ":" + descriptElement.getText()); List<Element> subElementList = element.elements("module2"); for (Element subElement : subElementList) { if(!subElement.getTextTrim().equals("")){ System.out.println(subElement.getTextTrim()); }else{ Element subnameElement = subElement.element("name"); System.out.println(subnameElement.getName() + ":" + subnameElement.getText()); Element subvalueElement = subElement.element("value"); System.out.println(subvalueElement.getName() + ":" + subvalueElement.getText()); Element subdescriptElement = subElement.element("descript"); System.out.println(subdescriptElement.getName() + ":" + subdescriptElement.getText()); } } } } } } catch (Exception e) { e.printStackTrace(); }} @Test public void testXMLWrite(){ //DocumentHelper提供了创建Document对象的方法 Document document = DocumentHelper.createDocument(); //添加节点信息 Element rootElement = document.addElement("modules"); Element element0 = rootElement.addElement("module"); //这里可以继续添加子节点,也可以指定内容 element0.setText("这个是module标签的文本信息"); Element element = rootElement.addElement("module"); Element nameElement = element.addElement("name"); nameElement.setText("名称"); nameElement.addAttribute("language", "java");//为节点添加属性值 Element valueElement = element.addElement("value"); valueElement.setText("值"); valueElement.addAttribute("language", "c#"); Element descriptionElement = element.addElement("description"); descriptionElement.setText("描述"); descriptionElement.addAttribute("language", "sql server"); String xmlData = document.asXML(); System.out.println(xmlData); //将document文档对象直接转换成字符串输出// 将XML写入到文件中// Writer fileWriter = new FileWriter("c:\\module.xml");// //dom4j提供了专门写入文件的对象XMLWriter// XMLWriter xmlWriter = new XMLWriter(fileWriter);// xmlWriter.write(document);// xmlWriter.flush();// xmlWriter.close(); System.out.println("xml文档添加成功!"); }}
0 0
- Java读取,生成XML文本,文件
- JAVA读取文本.XML等文件
- 读取XML文件中的文本
- 通过xStream读取xml文件生成Java对象和Java对象生成xml文件
- 读取 生成 格式化 XML 文件
- FLASH读取JAVA生成的XML文件,不同平台乱码
- Java读取excel文件生成xml文档和JSON文档
- Java读取一个xml文件并生成相应的类
- Java读取excel文件生成xml文档和JSON文档
- 使用Python将TXT文本内容读取后生成指定XML格式的文件
- JAVA读取XML文件
- JAVA读取XML文件
- JAVA读取XML文件
- JAVA读取XML文件
- JAVA读取xml文件
- java 读取xml文件
- java读取XML文件
- Java 读取XML文件
- Oracle 11g安装图文攻略
- 【设计模式】抽象工厂
- JNI层与Java层结构体传递
- 【JavaScript】window对象属性
- zoj_2001 Adding Reversed Numbers
- Java读取,生成XML文本,文件
- 文件名命工具类(将指定目录下的文件的type类型的文件,进行重命名,命名后的文件将去掉type)
- 黑马程序员——C语言学习之基本运算及优先级
- 黑马程序员——Java基础---泛型、集合框架工具类:collections和Arrays
- HDU 1.1.3解题报告
- C++编译器为类自动生成拷贝构造函数的情况
- MTU与MSS的关系
- SVN基础
- 远程连接Sql server服务器的配置