XML解析之JDOM
来源:互联网 发布:csdn 算法 编辑:程序博客网 时间:2024/06/05 07:42
一、JDOM是使用Java语言编写的用于读、写、操作XML的一套组件。所谓的JDOM=JDOM的可修改性 + SAX的文件读取性
JDOM的开发包下载地址:http://www.jdom.org/ (找到Binaries,里面有JDOM的版本)
二、JDOM的主要操作类:
No.
类名称
描述
1
Document
Document类定义了一个XML文件的各种操作,用户可以通过它所提供的方法来存取根元素以及存取处理命令文件层次的相关信息。
2
DOMBuilder
DOMBuilder类用来建立一个JDOM结构树
3
Element
Element类定义了一个XML元素的各种操作,用户可以通过他所提供的方法得到元素的文字内容、属性值以及子节点
4
Attribute
Attribute类表示了XML文件元素中属性的各种操作
5
XMLOutputter
XMLOutputter类会将一个JDOM结构树格式化为一个XML文件,并且以输出流的方式加以输出
三、利用JDOM生成XML文件(address.xml)
package he.xiao.wei;import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import org.jdom.Attribute;import org.jdom.Document;import org.jdom.Element;import org.jdom.output.XMLOutputter;public class JDOMBuildFileDemo {public static void main(String[] args) {Element addresslist = new Element("addresslist");Element linkman = new Element("linkman");Element name = new Element("name");Element email = new Element("email");Attribute id = new Attribute("id", "10330070");//定义Document对象Document doc = new Document(addresslist);name.setText("Joywy");//将属性设置到元素之中name.setAttribute(id);email.setText("beyondhxw@163.com");//设置关系linkman.addContent(name);linkman.addContent(email);addresslist.addContent(linkman);XMLOutputter out = new XMLOutputter();//设置编码out.setFormat(out.getFormat().setEncoding("GBK"));try {out.output(doc, new FileOutputStream(new File("E:" + File.separator + "address.xml")));} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}}
四、JDOM解析address.xml文件
package he.xiao.wei;import java.io.File;import java.io.IOException;import java.util.List;import org.jdom.Document;import org.jdom.Element;import org.jdom.JDOMException;import org.jdom.input.SAXBuilder;public class JDOMParseXML {public static void main(String[] args) throws Exception{SAXBuilder builder = new SAXBuilder();Document read_doc = builder.build(new File("E:" + File.separator + "address.xml"));//取得根Element root = read_doc.getRootElement();//得到所有的linkmanList list = root.getChildren("linkman");for(int i = 0; i < list.size(); i++){Element e = (Element)list.get(i);String name = e.getChildText("name");String id = e.getChild("name").getAttribute("id").getValue();String email = e.getChildText("email");System.out.println("--------联系人-------");System.out.println("姓名:" + name + ",编号:" + id);System.out.println("Email:" + email);System.out.println("--------------------");}}}
- 解析xml之--JDOM
- XML解析之JDOM
- 解析XML之JDOM
- XML解析之jdom
- XML解析之jdom
- XML解析之JDOM
- XML解析之JDOM
- XML之JDOM解析
- XML解析之jdom解析
- XML解析之Jdom解析
- XML文档解析之JDOM解析
- java解析xml之二:使用JDOM
- java解析xml之二:使用JDOM
- 解析XML的方式之JDOM
- XML解析入门之JDOM(一)
- XML解析入门之JDOM(二)
- XML解析入门之JDOM(三)
- XML之DOM4、JDom等解析方式
- iOS开发:使用Settings Bundle为程序添加设置项 (转)
- oracle中的rownum和rowid的作用及区分
- Kinect 最新版OpenNI+NITE安装
- 2012.7.7总结
- 如何判断textbox里面的内容是整数?? C#
- XML解析之JDOM
- static解决多线程的用法
- POJ3349 Snowflake Snow Snowflakes
- LED驱动程序
- ViewController的生命周期分析和使用
- const char*p,char const*p,char *const p,const char **p,char const**p,char *const*p,char**const p
- 2012-7-7 总结
- 【转】static_cast、dynamic_cast、reinterpret_cast和const_cast之间的区别
- 工资构成比例