扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:中国IT实验室 来源:中国IT实验室 2007年9月22日
关键字:
在本页阅读全文(共2页)
程序首先初始化一个SAXBuilder对象,通过其build()方法构建Document对象。注意:JDOM本身没有对XML文件的分析器parser,它是利用JAXP中的parser进行XML分析的。然后通过getRootElement()获得顶层的元素root(XML文件中book标签),继而通过getChild()获取各元素,然后通过getText取得文本内容。getChildren()得到的是List类型的对象,通过Iterator类对其进行迭代。
程序运行的结果如下:
BookTitle: Java and XML
ChapterTitle: Introduction
TopicName: XML Matters
TopicName: What's Important
TopicName: The Essentials
TopicName: What's Next?
ChapterTitle: Nuts and Bolts
TopicName: The Basics
TopicName: Constraints
TopicName: Transformations
TopicName: And More...
TopicName: What's Next?
经常,我们需要把应用程序里的配置数据进行输出到文件中,下面举例说明如何利用JDOM将配置输出到XML文件中。
下面的例子先把应用程序中要使用到的配置从一个配置文件中读入,然后输出到XML文件中。
配置文件名为:conf.properties,内容如下:
BookTitle = Java and XML
ChapterTitle = Introduction
TopicName = XML Matters
程序名为:XMLOutputterTest.java,内容如下:
----------------------------------------------------------
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.util.Enumeration;
import java.util.Properties;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.output.XMLOutputter;
public class XMLOutputterTest {
public static void main(String[] args) {
try {
FileInputStream inputstream = new FileInputStream("conf.properties");
Properties prop = new Properties();
prop.load(inputstream);
Enumeration emu = prop.propertyNames();
Element root = new Element("properties");
root.addContent("\n");
Document doc = new Document(root);
while (emu.hasMoreElements()) {
String propertyName = (String) emu.nextElement();
String propertyValue = prop.getProperty(propertyName);
Element element = new Element(propertyName);
element.setText(propertyValue);
root.addContent(element);
root.addContent("\n");
}
XMLOutputter outputter = new XMLOutputter();
FileOutputStream fileoutput = new FileOutputStream("output.xml");
outputter.output(doc, fileoutput);
} catch (Exception ex) {
}
}
}
----------------------------------------------------------
程序先读入conf.properties文件,通过propertyNames()得出Enumeration迭代对象,进而获得propertyName并得到propertyValue,创建Element类型root对象,并以此创建Document类对象,然后通过addContent()添加到root对象中。最后创建XMLOutputter类对象,通过output()输出到XML文件中。
以上2个程序均在JDK 1.4.2的环境下测试通过,请读者到附件中下载源代码文件。
如果读者对以上的内容有任何疑问,可以和我联系,qianh@cntmi.com 版权所有,严禁转载
参考资料:
1、《Java_and_XML_2nd_Edition》written by Brett McLaughlin, Published by O'Reilly, Second Edition September 2001
2、JDOM主页:http://www.jdom.org/
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者