1.XML文件的内容不像HTML那样,他是一套标准,主要由以下部分组成:
<?xml version="1.0" encoding="UTF-8"?>
<MyRoot title="usermessage">------根元素(一个xml文档只有一个根元素)
<name>henrylin</name> ------name子元素 包含内容henrylin
<age value="23"/> ------带属性value值为23的age子元素
<contact> ------子元素contact含有子元素telephone
<telephone>13459204193</telephone>
</contact>
</MyRoot>
2.以上xml文件的生成过程的对象关系:
XML 元素==Element 的实例
XML 属性== Attribute 的实例
XML 文档== Document 的实例
3.代码:
Element root=new Element("MyRoot");
Domcument myDocument=new Document(root);//根元素作为参数创建对象
Attribute att=new Attribute("title","usermessage");
root.setAttribute(att);//给根元素对象添加属性,名为title,值为usermessage
Element name=new Element("name");
name.addContent("henrylin");// 初始化一个含有henrylin的内容的element
root.addContent(name);//将该节点添加到element的content内容中
root.addContent(new Element("age").setAttribute(new Attribute("age","23")));添加带属性的节点
root.removeChild("age");//删除root元素下面的age子元素
注:以上代码可看出Element类有一个两个同名方法addContent,参数分别为String和Element。
一般在叶子节点上面直接使用String参数,其他时候通常使用Element参数。
理解以上代码以后,几乎可以生成任何你想要生成的XML内容了。
4. 使用XMLOutputter类将JDOM文档对象转化为其他输出对象
4.1 输出到控制台
XMLOutputter xmlOut = new XMLOutputter(Format.getPrettyFormat());//指定格式
try {
xmlOut.output(myDocument,System.out);//指定输出对象为System.out
} catch (IOException e)
{
e.printStackTrace();
}
4.2 转化给Writer 或 OutputStream对象:
FileWriter writer = new FileWriter("/some/directory/myFile.xml");
outputter.output(myDocument, writer);
writer.close();
4.3 转化给String变量:
Strng outString = xmlOut.outputString(myDocument);
4.4 选择元素进行输出:
xmlOut.output(rootElement.getChild("name"),System.out);
5.JDOM读取并操作现有的 XML 数据。
包:org.jdom.input.*这个包里。
类:
DOMBuilder功能是将DOM模型的Document解析成JDOM模型的Document
SAXBuilder的功能是从文件或流中解析出符合JDOM模型的XML树。
解析一个xml文档,基本可以看成以下几个步骤:
5.1.实例化一个合适的解析器对象
本例中我们使用SAXBuilder:
SAXBuilder sb = new SAXBuilder();
5.2.以包含XML数据的文件为参数,构建一个文档对象myDocument
Document myDocument = sb.build(/some/directory/myFile.xml);
5.3.获到根元素
Element rootElement = myDocument.getRootElement();
Element对象的常用方法作简单说明:
getChild("childname") 返回指定名字的子节点,如果同一级有多个同名子节点,则只返回第一个;
如果没有返回null值。
getChildren("childname") 返回指定名字的子节点List集合。这样你就可以遍历所有的同一级同名子节点。
getAttributeValue("name") 返回指定属性名字的值。如果没有该属性则返回null,有该属性但是值为空,
则返回空字符串。
getChildText("childname") 返回指定子节点的内容文本值。
getText() 返回该元素的内容文本值。
分享到:
相关推荐
使用Jdom.jar包解析XML文件,JDOM是一个开源项目,它基于树型结构,利用纯JAVA的技术对XML文档实现解析、生成、序列化以及多种操作。JDOM直接为JAVA编程服务。它利用更为强有力的JAVA语言的诸多特性(方法重载、集合...
NULL 博文链接:https://newtime.iteye.com/blog/437109
JAVA 解析XML和生成XML文档源码。比较全 1.DOM生成和解析XML文档 2.SAX生成和解析XML文档 3.DOM4J生成和解析XML文档 4.JDOM生成和解析XML
第一个是org.jdom包,它包括表示XML文档以及 其组件的类。下一个是org.jdom.input包,它包括用于构建XML文档的类。其中最主要和最重要的类是SAXBuilder。org.jdom.output包中包括输出XML文档的一些类。其中最重要的...
本文通过在Eclipse中创建并运行两个java程序,展现了JDOM直接为java编程服务的特性,从程序运行结果中可体会到把SAX和DOM功能有效地结合起来,通过一个JDOM的jar包在java程序中实现对XML数据的处理。
利用JDOM解析xml文件,并根据xml中为类名,生成相应的对象。
JDOM是一个开源项目,它基于树型结构,利用纯JAVA的技术对XML文档实现解析、生成、序列化以及多种操作。 JDOM 直接为JAVA编程服务。它利用更为强有力的JAVA语言的诸多特性(方法重载、集合概念以及映射),把SAX和...
读取Excel文件,将文件内容转为xml格式,并生成文件
JDOM是一个开源项目,它基于树型结构,利用纯JAVA的技术对XML文档实现解析、生成、序列化以及多种操作。 JDOM 直接为JAVA编程服务。它利用更为强有力的JAVA语言的诸多特性(方法重载、集合概念以及映射),把SAX和...
xml文件生成工具类(含jdom.jar)
4种最主流、最全面、最详细的生成和解析xml的4种方式,包括Dom,Dom4j,Sax,JDom,读懂了绝对好用xml,非常好的入门项目,而且精心排版,逻辑清晰
通过jdom生成xml,实例过程:其实就是通过java bean 映射为xml的各个节点,明白了这个思想基本就可以用了。
使用jdom解析xml的实例 包括生成新的xml文件,读取xml和修改xml 项目是myeclipse创建的
JDOM是一个开源项目,它基于树型结构,利用纯JAVA的技术对XML文档实现解析、生成、序列化以及多种操作。 JDOM 直接为JAVA编程服务。它利用更为强有力的JAVA语言的诸多特性(方法重载、集合概念以及映射),把SAX和...
JDOM是一个开源项目,它基于树型结构,利用纯JAVA的技术对XML文档实现解析、生成、序列化以及多种操作。 JDOM 直接为JAVA编程服务。它利用更为强有力的JAVA语言的诸多特性(方法重载、集合概念以及映射),把SAX和...
NULL 博文链接:https://jiahua8859-163-com.iteye.com/blog/668246
自己到properties文件里面修改数据库相关的东西,再引入连接MYSQL数据库的包,运行就可以了
用java jdom.jar生成xml文件的java代码
本资源实现Java中的XML文件解析--【JDom】方法,生成XML文件的数据是从MySQL数据库中来的
JDOM是一个开源项目,它基于树型结构,利用纯JAVA的技术对XML文档实现解析、生成、序列化以及多种操作。