首先,创建public的DTD。不知道public形式的DTD中Dtd名称部分怎么用JDOM的API,JDOM好像没有提供,不过用setPublicID可以实现,代码:
try {
Document document = new Document();//创建一个新的document对象
DocType docType = new DocType("quqtalk");//创建一个DTD对象
//所有者:quqtalk,DTD名字:quqtalk date,语言的种类:CN
docType.setPublicID("-//quqtalk//quqtalk data//CN");
//DTD位置,可以是绝对路径也可以是相对路径
docType.setSystemID("http://www.quqtalk.com/dtds/quqtalk.dtd");
document.setDocType(docType);
Element root = new Element("quqtalk");//根元素
document.setRootElement(root);
Element name = new Element("name");//新建元素name
name.setText("Shaohua Qu");
root.addContent(name);
XMLOutputter outp = new XMLOutputter();// 用于输出jdom 文档
Format format = Format.getPrettyFormat(); // 格式化文档
format.setEncoding("GBK"); //字符集
outp.setFormat(format);
outp.output(document, System.out); // 输出文档
} catch (IOException e) {
e.printStackTrace();
}
output结果:
<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE quqtalk PUBLIC "-//quqtalk//quqtalk data//CN" "http://www.quqtalk.com/dtds/quqtalk.dtd">
<quqtalk>
<name>Shaohua Qu</name>
</quqtalk>
然后,创建SYSTEM的DTD,代码:
try {
Document document = new Document();//创建一个新的document对象
DocType docType = new DocType("quqtalk");//创建一个DTD对象
//DTD位置,可以是绝对路径也可以是相对路径
docType.setSystemID("http://www.quqtalk.com/dtds/quqtalk.dtd");
document.setDocType(docType);
Element root = new Element("quqtalk");//根元素
document.setRootElement(root);
Element name = new Element("name");//新建元素name
name.setText("Shaohua Qu");
root.addContent(name);
XMLOutputter outp = new XMLOutputter();// 用于输出jdom 文档
Format format = Format.getPrettyFormat(); // 格式化文档
format.setEncoding("GBK"); //字符集
outp.setFormat(format);
outp.output(document, System.out); // 输出文档
} catch (IOException e) {
e.printStackTrace();
}
output结果:
<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE quqtalk SYSTEM "http://www.quqtalk.com/dtds/quqtalk.dtd">
<quqtalk>
<name>Shaohua Qu</name>
</quqtalk>
分享到:
相关推荐
这是一个jdom解析xml的小例子、里面还有dtd文件的编写以及dtd文件约束xml文件。这是一个jdom解析xml的小例子、里面还有dtd文件的编写以及dtd文件约束xml文件。这是一个jdom解析xml的小例子、里面还有dtd文件的编写...
使用JDOM创建XML文档,可以通过Element的子类化来定义自定义的元素类型,然后通过添加子元素、属性和文本内容来构建XML结构。 **DOM4J** DOM4J是另一个流行的Java XML处理库,它不仅实现了DOM API,还提供了SAX和...
JDOM,全称Java Document Object Model,是专门为Java设计的一个解析XML的API,它提供了方便的构建和操作XML文档的方法。 JDOM的优势在于它完全基于Java,因此可以充分利用Java的强大功能,如异常处理、内存管理等...
此外,JDOM还支持XML Schema和DTD验证,以及XPath表达式来定位XML文档中的特定节点。 然而,JDOM并非没有缺点。它的内存消耗相对较高,因为它会将整个XML文档加载到内存中,这在处理大型XML文件时可能会成为一个...
5. **Builder(构建器)**:JDOM提供Builder接口来创建XML文档。主要有SAXBuilder和DOMBuilder,前者基于事件驱动的SAX解析,后者基于DOM解析。 **JDOM API主要类和方法** 1. **org.jdom2.Document**:这是整个XML...
- **org.jdom.transform** 包含了用于转换JDOM XML文档接口为其他XML文档接口的类,如`JDOMSource`和`JDOMResult`。 - **org.jdom.xpath** 提供了对XML文档进行XPath查询的方法。 #### 二、JDOM类说明 JDOM的核心...
JDOM是Java文档对象模型(Java Document Object Model)的简称,它为XML文档提供了一个纯Java的API,允许开发者在Java环境中创建、修改和读取XML文档。在这个主题中,我们将深入探讨JDOM的基本概念、使用场景和相关...
4. **JDomTest.java** - 这个文件可能是JDOM的核心示例,展示了如何使用JDOM的API来构建XML文档、查询XML元素、以及进行其他常见的XML操作。 5. **DOMSample.java** - 这个类可能演示了如何使用DOM(Document ...
在处理XML文件时,还应注意XML的命名空间和DTD(Document Type Definition)或Schema,它们定义了XML文档的结构和规则。例如,`javax.xml.parsers.DocumentBuilderFactory`的`setNamespaceAware(true)`方法可以开启...
2. **读取XML文档**:使用`DocumentBuilder`的`parse()`方法加载XML文件,然后遍历文档结构。 ```java File file = new File("example.xml"); Document doc = builder.parse(file); Element root = doc....
此外,JDOM2和XStream都可以处理命名空间、DTD(文档类型定义)和XML Schema,使你能够处理更复杂的XML文档。在实际项目中,这两个库通常是处理XML文件的理想选择,特别是当你需要在Java程序中与XML数据交互时。 在...
JDOM的优点在于其简洁的API和对DOM的良好支持,使得开发人员可以很容易地创建、修改和读取XML文档。然而,由于DOM解析方式会一次性加载整个XML文件,当处理大文件时可能会消耗大量内存。 SAX(Simple API for XML)...
在"java操作xml-jdom.mht"文件中,你可能学习到如何通过JDom解析XML文件,创建XML结构,以及如何读取和修改XML文档中的元素和属性。例如,你可以使用SAXBuilder类来解析XML文件,然后通过Element对象来访问和修改...
为了确保XML文档的一致性和准确性,通常会使用DTD(Document Type Definition)或Schema来进行验证。 - **DTD**:是一种早期的验证机制,用于定义XML文档中的元素和属性的结构。DTD比较简单,但功能有限。 - **...
JDOM还支持XML Schema和DTD(Document Type Definition)验证,确保XML文档遵循预定义的规则。此外,JDOM提供了丰富的API来处理命名空间,这对于处理包含复杂命名空间的XML文档至关重要。 在插件开发中,JDOM可以...
Java XML API是Java平台提供的一套用于处理XML文档的接口和类,它使得开发者能够方便地在Java程序中创建、解析、修改XML文档。本文将深入探讨Java XML API中的核心组件,包括SAX(Simple API for XML)、DOM...
JDOM 1.1提供了良好的错误处理机制,当XML文档结构不正确或不符合DTD(Document Type Definition)或XSD(XML Schema Definition)时,会抛出相应的异常。同时,JDOM也支持XML文档的验证,确保数据的准确性。 6. *...
Java在处理XML文档时,经常会使用到解析库,其中Dom4j和JDom是两个非常重要的选择。这两个库都是基于Java的DOM(Document Object Model)实现,提供了方便的方式来读取、写入、修改XML文件。下面我们将详细探讨这两...