需要导入的jar包:jdom-2.0.6.jar

package com.huawei.xml;

import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.List;

import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.input.SAXBuilder;
import org.jdom2.output.Format;
import org.jdom2.output.XMLOutputter;

/**
*
* JDOM解析
* @author Administrator
*
*/
public class TestJDOMParser {

public static void parser() throws Exception{
//得到解析器
//DOMBuilder 主要用于构建内存中已有的文档
//SAXBuilder 主要用于 基于文件或是输入流构建文档

SAXBuilder builder = new SAXBuilder();
InputStream in = TestJDOMParser.class.getClassLoader().getResourceAsStream("com/cdsxt/resources/Users.xml");
//得到构建的DOcument
Document doc = builder.build(in);

//先得到根节点 然后再去得到 子元素

Element root = doc.getRootElement();
//得到所有的儿子元素
List<Element> childs = root.getChildren();

for(Element child:childs){
// System.out.println(child.getAttributeValue("id"));
System.out.println(child.getChildText("username"));
}

}

public static void updateXMl(){

}

/**
* 创建一个xml文件
*/
public static void createXML() throws Exception{

//都建文档
Document doc = new Document();

Element root = new Element("Users");

Element user = new Element("User");
user.setAttribute("id", "zhanoliu").setAttribute("name", "test-user");

Element username = new Element("username");
username.addContent("fengjie");

Element email = new Element("email");
email.setText("fenjie@126.com");

//建立关系
user.setContent(username);
user.setContent(email);

root.addContent(user);

doc.setRootElement(root);

//将构建好的Document写出去

//创建将文件输出器
XMLOutputter outputter = new XMLOutputter();

//默认的是没有格式的 所以要获取一个格式化器 去格式话代码

Format format = Format.getPrettyFormat();
format.setIndent(" ");
outputter.setFormat(format);

//构建文件输出流
OutputStream out = new FileOutputStream(new File("F:/tttt.xml"));
//输出文件
outputter.output(doc, out);

out.flush();
out.close();

}

public static void main(String[] args) throws Exception {
//parser();
createXML();
}

}

第三方工具Jdom解析XML的更多相关文章

  1. Javaweb学习笔记——使用Jdom解析xml

    一.前言 Jdom是什么? Jdom是一个开源项目,基于树形结构,利用纯java的技术对XML文档实现解析,生成,序列化以及多种操作.它是直接为java编程服务,利用java语言的特性(方法重载,集合 ...

  2. jdom解析xml

    这次把代码整理了一下,打包发上来了,程序中需要用到的jar包也一起打在里面了,有兴趣的朋友可以解压后直接导入的eclipse里运行! xml是一种广为使用的可扩展标记语言,java中解析xml的方式有 ...

  3. 简单使用JDOM解析XML

    原文:http://liuwentao.iteye.com/blog/59978 使用JDOM解析XML一.前言JDOM是Breet Mclaughlin和Jason Hunter两大Java高手的创 ...

  4. Java jdom解析xml文件带冒号的属性

    Java jdom解析xml文件带冒号的属性 转载请标明出处: https://dujinyang.blog.csdn.net/article/details/99644824 本文出自:[奥特曼超人 ...

  5. 使用JDom解析XML文档模拟Spring的配置文件解析

    在J2EE项目中可能会涉及到一些框架的使用,最近接触到了SSH,拿Spring来说配置文件的使用是相当重要的,Spring的配置文件是一个xml文件,Spring是如何读取到配置文件并进行依赖注入的呢 ...

  6. 使用JDOM解析xml文档

    一.使用JDOOM解析xml文档 准备工作 1.下载JDOM.jar 包 解析代码如下 import org.jdom2.Attribute; import org.jdom2.Document; i ...

  7. Java中Jdom解析XML

    JDOM与DOM类似,也是一组用于解析XML的API,它本身不是一个解析器,默认的它内置了Apache的Xerces解析器:JDOM与DOM不同的是,DOM是跨语言的一套API,Java世界中有很多D ...

  8. Java&Xml教程(六)使用JDOM解析XML文件

    JDOM 提供了非常优秀的Java XML API来更方便的读取.修改.生成XML文档.JDOM还提供了包装类供用户从SAX.DOM.STAX事件解析.STAX流解析中选择具体的实现. 在本教程中,我 ...

  9. java解析xml(使用jdom解析xml)

    第一步: 装入jar包:下载地址:http://www.jdom.org/downloads/index.html 第二步: 在项目中加入jar包 jdom-2.06.jar 放入lib中 第三步: ...

随机推荐

  1. 流程设计器jQuery + svg/vml(Demo3 - 添加流程结点)

    经过前面的准备工作,终于把设计器的主要UI界面搭建好了,接下来到添加流程结点,效果如下图 代码:GoFlow_03.zip 演示地址:Demo 微信演示公众号: 另:Silverlight版 Silv ...

  2. 初始化一个static的Map变量

    第一种方法:static块初始化 public class Demo{ private static final Map<String, String> myMap; static { m ...

  3. IOS中UITableViewCell使用详解

    IOS中UITableViewCell使用详解 - (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(N ...

  4. bootstrap table教程--使用入门基本用法

    笔者在查询bootstrap table资料的时候,看了很多文章,发觉很多文章都写了关于如何使用bootstrap table的例子,当然最好的例子还是官网.但是对于某部分技术人员来说,入门还是不够详 ...

  5. 全面剖析Smarty缓存机制一[三种缓存方式]

    今天主要全面总结下Smarty模板引擎中强大的缓存机制,缓存机制有效减少了系统对服务器的压力,而这也是很多开发者喜欢Smarty的原因之一,由于篇幅较大,便于博友阅读,这篇文章将剖析Smarty缓存的 ...

  6. asm335x系列adc和触摸屏驱动(转)

    An analog-to-digital converter (abbreviated ADC) is a device that uses sampling to convert a continu ...

  7. 基于ffmpegSDK的开发

    #include <stdio.h> #include <libavutil/avutil.h> #include <libavcodec/avcodec.h> # ...

  8. 卸载 visual studio 2012时先把系统还原打开

    否则,会停留在创建还原点那儿很长时间 .

  9. java web Servlet开发(二)

    一.ServletConfig讲解 1.1.配置Servlet初始化参数 在Servlet的配置文件web.xml中,可以使用一个或多个<init-param>标签为servlet配置一些 ...

  10. A Newbie’s Install of Keras & Tensorflow on Windows 10 with R

    This weekend, I decided it was time: I was going to update my Python environment and get Keras and T ...