- Java XML 教程
- Java XML 首页
- Java XML 概述
- Java XML 解析器
- Java DOM 解析器
- Java DOM 解析器
- 解析 XML 文档
- 查询 XML 文档
- 创建 XML 文档
- 修改 XML 文档
- Java SAX 解析器
- Java SAX 解析器
- 解析 XML 文档
- 查询 XML 文档
- 创建 XML 文档
- 修改 XML 文档
- JDOM XML 解析器
- JDOM XML 解析器
- 解析 XML 文档
- 查询 XML 文档
- 创建 XML 文档
- 修改 XML 文档
- Java StAX 解析器
- Java StAX 解析器
- 解析 XML 文档
- 查询 XML 文档
- 创建 XML 文档
- 修改 XML 文档
- Java XPath 解析器
- Java XPath 解析器
- 解析 XML 文档
- 查询 XML 文档
- 创建 XML 文档
- 修改 XML 文档
- Java DOM4J 解析器
- Java DOM4J 解析器
- 解析 XML 文档
- 查询 XML 文档
- 创建 XML 文档
- 修改 XML 文档
- Java XML 有用资源
- Java XML - 问答
- Java XML - 快速指南
- Java XML - 有用资源
- Java XML - 讨论
Java JDOM Document getDocType() 方法
Java JDOM 的getDocType()方法,属于Document类,用于以JDOM DocType 对象的形式获取XML文档的DocType声明。有些XML文档可能没有DocType声明语句;在这种情况下,它返回null。
要从此方法返回的DocType对象中获取更多信息,DocType类中提供了一些方法,例如getElementName()、getSystemID()、getPublicID()等。
语法
以下是Java JDOM Document getDocType()方法的语法:
Document.getDocType();
参数
Java getDocType()方法不接受任何参数。
返回值
Java getDocType()方法以JDOM DocType对象的形式返回DocType定义。
示例 1
这是一个包含DocType声明语句的hospital.xml文件。我们将使用Java JDOM Document getDocType()方法来获取DocType声明。
<!DOCTYPE hospital[ <!ELEMENT hospital (doctor+)> <!ELEMENT doctor (#PCDATA)> ]> <hospital> <doctor>Dr.Rajesh Sharma</doctor> <doctor>Dr.Priya Gowtham</doctor> <doctor>Dr.Manoj Varma</doctor> </hospital>
以下基本的Java程序使用getDocType()方法从上面提到的hospital.xml文件中检索DocType声明。
import java.io.File; import org.jdom2.DocType; import org.jdom2.Document; import org.jdom2.input.SAXBuilder; public class GetDocType { public static void main(String args[]) { try { //Reading the document SAXBuilder saxBuilder = new SAXBuilder(); File inputFile = new File("hospital.xml"); Document doc = saxBuilder.build(inputFile); //Get DocType DocType docType = doc.getDocType(); System.out.println(docType); } catch (Exception e) { e.printStackTrace(); } } }
输出窗口显示DTD声明。
[DocType: <!DOCTYPE hospital>]
示例 2
DocType类的getElementName()方法检索定义DTD约束的元素的名称。getSystemID()和getPublicID()分别返回XML文档的系统ID和公共ID。
import java.io.File; import org.jdom2.DocType; import org.jdom2.Document; import org.jdom2.input.SAXBuilder; public class GetDocType { public static void main(String args[]) { try { //Reading the document SAXBuilder saxBuilder = new SAXBuilder(); File inputFile = new File("hospital.xml"); Document doc = saxBuilder.build(inputFile); //Get DocType Element DocType docType = doc.getDocType(); System.out.println("DocType Element name: "+docType.getElementName()); System.out.println("System ID: "+docType.getSystemID()); System.out.println("Public ID: "+docType.getPublicID()); } catch (Exception e) { e.printStackTrace(); } } }
输出窗口显示DocType元素名称、系统ID和公共ID。
DocType Element name: hospital System ID: null Public ID: null
示例 3
如果XML文档中没有DocType定义,则getDocType()方法返回null。
import org.jdom2.DocType; import org.jdom2.Document; import org.jdom2.Element; public class GetDocType { public static void main(String args[]) { try { //Creating a new Document and adding the root Document doc = new Document(); Element element = new Element("hospital"); doc.addContent(element); //Get the DocType DocType docType = doc.getDocType(); System.out.println(docType); } catch (Exception e) { e.printStackTrace(); } } }
输出窗口显示DocType为null。
null
广告