`
yangjb
  • 浏览: 33088 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

dom4j生成和解析xml

    博客分类:
  • soa
阅读更多
public class XmlTest{
     //创建xml
     public static void createxml(String fileName) throws Exception {
Document document = DocumentHelper.createDocument();
Element root = DocumentHelper.createElement("ns0:UCP_TMS_08").addAttribute("xmlns:ns0", "urn:redbaby:ucp:tms:bus");
Element element = DocumentHelper.createElement("row");
element.add(DocumentHelper.createElement("name").addText("张三"));
element.add(DocumentHelper.createElement("sex").addText("男"));
element.add(DocumentHelper.createElement("age").addText("29"));
root.add(element);
document.add(root);
saveXML(fileName,document);
}
    //保存生成的xml
    public static void saveXML(String path,Document document) throws UnsupportedEncodingException{
try {
FileOutputStream fos = new FileOutputStream(path);
OutputFormat format = OutputFormat.createPrettyPrint();
format.setEncoding("utf-8");
XMLWriter writer = new XMLWriter(fos, format);
try {
writer.write(document);
} catch (IOException e) {
e.printStackTrace();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}

}

//解析刚才生成的xml
public static void parserXml(String path) throws Exception {
try {

SAXReader saxReader = new SAXReader();
Document document = saxReader.read(new File(path));
Node ns0Node = document.selectSingleNode("//ns0:UCP_TMS_08");
String ns0Urn = ns0Node.getDocument().getRootElement().getNamespaceURI();
if(ns0Urn!="urn:redbaby:ucp:tms:bus"){
System.out.println("根元素不对");
return;
}
System.out.println(ns0Urn);
List<Element> list = (List<Element>) document.selectNodes("//row");
if(list!=null&&list.size()>0){
totalcount += list.size();
Iterator<Element> iter = list.iterator();
String name= "";
String sex= "" ;
String age= "";
  while(iter.hasNext()){
try {
Element row = (Element)iter.next();
name= row.elementText("name");
sex = row.elementText("sex");
age= row.elementText("age");
                   System.out.println(name+"----"+sex+"----"+age)
}catch (Exception e) { e.printStackTrace();
}
System.out.println("dom4j parserXml");
}
public static void main(String[] args){
//createxml,parserXml是静态方法,不需要创建实例,运行main方法,此时看E下就多了2.xml文件 ,并解析了2.xml
try {
createxml("E:\\2.xml");
                   parserXml("E:\\2.xml");
} catch (Exception e) {
e.printStackTrace();
}
}

}
0
2
分享到:
评论

相关推荐

    利用Dom4j生成XML和解析XML

    "Dom4j 生成 XML 和解析 XML" Dom4j 是一个 Java 库,用于处理 XML 文档。它提供了生成和解析 XML 文档的功能。在本文中,我们将学习如何使用 Dom4j 生成 XML 文档和解析 XML 文档。 生成 XML 文档 使用 Dom4j ...

    dom4J生成xml、解析xml、生成xml文件实例

    **dom4J生成和解析XML文件** DOM4J是一个强大的Java XML API,它不仅提供了DOM、SAX和JDOM等接口的实现,还提供了一种更简单、更灵活的方式来处理XML文档。这篇博客()可能详细介绍了如何使用DOM4J来生成和解析XML...

    Dom4J生成XML的完整方法希望大家能用到

    Dom4J作为一款优秀的Java XML API,以其简洁、高效的特点,在生成、解析和操作XML文档方面表现突出。本文将深入探讨如何使用Dom4J库来创建XML文档,包括初始化文档、添加元素、设置属性、插入文本以及最终保存文档至...

    Dom4j解析和生成XML文档

    DOM4J通过构建DOM树(Document Object Model)来解析XML。DOM模型是一种将XML文档转换为内存中对象树的表示方式。在DOM4J中,我们可以使用`DocumentBuilderFactory`和`DocumentBuilder`来创建`Document`对象,然后...

    dom4j解析xml详解

    ### DOM4J解析XML详解 #### 一、DOM4J简介与特性 DOM4J是一个由dom4j.org开发的开源XML解析包,专为Java平台设计,它不仅支持DOM、SAX和JAXP标准,还巧妙地融入了Java集合框架,使其成为Java开发者在处理XML数据时...

    dom4j解析及生成 xml代码收集

    解析XML文件后,DOM4J会构建一个`Document`对象树,你可以通过这个树来访问和操作XML的所有元素。 - **Element对象**:`Element`是XML文档中的节点,相当于HTML的`&lt;tag&gt;`。DOM4J提供了丰富的API来操作元素,如获取...

    dom4j解析xml文件的压缩包

    为了使用这个库,你需要将该jar包添加到项目的类路径中,然后就可以通过DOM4J提供的类和方法来解析和操作XML文件了。 总之,DOM4J是一个功能强大的XML处理库,无论是在小型项目还是大型系统中,都能发挥其优势,...

    生成、解析xml的四种方式(dom,dom4j,sax,jdom)

    本文将详细介绍生成和解析XML的四种主要方法:DOM、DOM4J、SAX和JDOM。 1. DOM(Document Object Model) DOM是W3C组织推荐的一种解析XML的标准方式。它将XML文档视为一个树形结构,每个节点代表XML文档的一部分。...

    dom4j 解析写入xml

    1、xml文档解析 2、 dom4j解析xml 3、实现xml文件解析 xml字符串解析 xml MAP键值对解析 4、实现xml写入与生成文件

    JAVA 解析XML生成XML文档实例

    JAVA 解析XML和生成XML文档源码。比较全 1.DOM生成和解析XML文档 2.SAX生成和解析XML文档 3.DOM4J生成和解析XML文档 4.JDOM生成和解析XML

    dom4j API 用于解析XML的java库

    DOM4J作为解析XML的工具,其主要功能和特性包括: 1. **DOM模型**:DOM4J提供了基于DOM(Document Object Model)的接口,允许开发者以树形结构操作XML文档。通过`Document`对象,可以访问XML文档的根元素,并通过`...

    java dom4j解析xml

    Java DOM4J解析XML是一种常见的处理XML文档的技术,它提供了灵活且高效的API,使得...通过理解上述DOM4J解析XML的基本概念、操作和示例,开发者可以有效地在Java项目中处理XML数据,无论是读取、创建还是修改XML文件。

    dom4j解析xml

    **DOM4J解析XML** DOM4J是一个Java库,它为处理XML提供了强大的功能,包括读取、写入、修改和操作XML文档。这个库以其灵活性、效率和易用性而受到开发者的青睐。DOM4J是基于DOM(Document Object Model)的,但它...

    DOM4j创建和解析XML文档

    在这个主题中,我们将深入探讨DOM4j如何帮助我们创建和解析XML文档,以及其背后的原理和用法。 首先,DOM4j采用了Document Object Model(DOM)的概念,但它比标准的Java DOM实现更加轻量级,性能更优。DOM4j的核心...

    dom4j解析xml,利用反射机制

    在这个项目中,我们利用DOM4J来解析XML文件,并通过Java的反射机制将解析出的信息存储到特定的类中。 首先,我们需要了解XML的基本概念。XML(Extensible Markup Language)是一种标记语言,常用于数据交换和结构化...

    dom4j生成XML文档及解析

    在这个场景中,我们将深入理解如何使用DOM4J来生成XML文档以及如何解析XML内容。 首先,生成XML文档涉及以下几个主要步骤: 1. **创建Document对象**:`DocumentHelper.createDocument()`方法用于创建一个新的XML...

    dom4j读取XML,解析XML简单示例

    在本示例中,我们将探讨如何利用DOM4J来读取和解析XML文件,以及如何通过`XMLTest.java`这个示例来理解DOM4J的基本用法。 首先,`XMLTest.java`是一个包含DOM4J操作XML的代码实例。通常,这样的程序会包含以下步骤...

    通过Dom4j创建和读取xml文件下载

    - **Dom4jUtil.java**: 包含DOM4J相关的实用工具函数,如创建和解析XML的辅助方法。 - **Dom4jTest.java**: 测试类,使用JUnit编写,用于验证DOM4JUtil的功能是否正常工作。 - **说明.txt**: 提供了关于如何使用这些...

Global site tag (gtag.js) - Google Analytics