DOM=DOM修改文件的优点+SAX读取快速的优点
使用JDOM生成XML文件和使用JDOM读取XML文件
生成XML:
定义一个根节点:
Element addresslist=new Element("addresslist");//定义根节点
Element linkman=new Element("linkman");//定义linkman节点
Element name=new Element("name");//定义name节点
Element email=new Element("email");//定义email节点
定义属性:
Attribute id=new Attribute("id","lxh");//定义属性
给这些节点设置内容:
name.setText("李兴华");//给name元素设置内容
email.setText("mldnqa@163.com");//设置email 元素的内容
给节点添加属性:
name.setAttribute(id);//设置name元素的属性
设置这些节点的关系:
linkman.addContent(name);//name为linkman的子节点
linkman.addContent(email);//name为linkman的子节点
addresslist.addContent(linkman);//linkman为addresslist 的子节点
输出到XML文件:
XMLOutputter out =new XMLOutputter();//用来输出XML文件
out.setFormat(out.getFormat().setEncoding("GBK"));//设置输出编码
out.output(doc, new FileOutputStream("HTML/address.xml"));//输出XML文件
读取XML:
建立解析器:
SAXBuilder builder=new SAXBuilder(); //建立XML解析器
找到Document:
Document read_doc=builder.build("HTMl/address.xml");//找到Document
读取根元素:
Element stu=read_doc.getRootElement();//读取根元素
取得linkman的全部子元素:
List list=stu.getChildren("linkman");//得到全部的linkman的子元素
取得这些子元素(节点)的内容:
String name =e.getChildText("name");//取得name元素的内容
String email=e.getChildText("email");//取得email的元素的内容
获得子节点的属性:
String id=e.getChild("name").getAttribute("id").getValue();//取得name的id属性
输出这些内容:
//输出这些内容
System.out.println("--------联系人----------");
System.out.println("姓名:"+name+",编号:"+id);
System.out.println("EMAIL:"+email);
System.out.println("------------------------");
System.out.println();
使用JDOM生成XML文件和使用JDOM读取XML文件
生成XML:
定义一个根节点:
Element addresslist=new Element("addresslist");//定义根节点
Element linkman=new Element("linkman");//定义linkman节点
Element name=new Element("name");//定义name节点
Element email=new Element("email");//定义email节点
定义属性:
Attribute id=new Attribute("id","lxh");//定义属性
给这些节点设置内容:
name.setText("李兴华");//给name元素设置内容
email.setText("mldnqa@163.com");//设置email 元素的内容
给节点添加属性:
name.setAttribute(id);//设置name元素的属性
设置这些节点的关系:
linkman.addContent(name);//name为linkman的子节点
linkman.addContent(email);//name为linkman的子节点
addresslist.addContent(linkman);//linkman为addresslist 的子节点
输出到XML文件:
XMLOutputter out =new XMLOutputter();//用来输出XML文件
out.setFormat(out.getFormat().setEncoding("GBK"));//设置输出编码
out.output(doc, new FileOutputStream("HTML/address.xml"));//输出XML文件
读取XML:
建立解析器:
SAXBuilder builder=new SAXBuilder(); //建立XML解析器
找到Document:
Document read_doc=builder.build("HTMl/address.xml");//找到Document
读取根元素:
Element stu=read_doc.getRootElement();//读取根元素
取得linkman的全部子元素:
List list=stu.getChildren("linkman");//得到全部的linkman的子元素
取得这些子元素(节点)的内容:
String name =e.getChildText("name");//取得name元素的内容
String email=e.getChildText("email");//取得email的元素的内容
获得子节点的属性:
String id=e.getChild("name").getAttribute("id").getValue();//取得name的id属性
输出这些内容:
//输出这些内容
System.out.println("--------联系人----------");
System.out.println("姓名:"+name+",编号:"+id);
System.out.println("EMAIL:"+email);
System.out.println("------------------------");
System.out.println();