java解析带有dtd验证的xml文件出错?
我的xml文档是:<?xmlversion="1.0"?><!DOCTYPEconfigurationSYSTEM"G:\java\configuration.dtd">...
我的xml文档是:
<?xml version="1.0"?>
<!DOCTYPE configuration SYSTEM "G:\java\configuration.dtd">
<configuration>
<title>dasdasd</title>
<name>helvetiaca</name>
<size>36</size>
<font>njknk</font>
</configuration>
我的dtd文档是:
<!ELEMENT configuration (title,name,size,font)>
<!ElEMENT title (#PCDATA)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT size (#PCDATA)>
<!ELEMENT font (#PCDATA)>
我用的是DOM解析,我检查了好几遍xml和dtd没发现错误,可是一解析就出现:
[Fatal Error] configuration.dtd:2:3: 文档类型声明包含或指向的标记声明必须格式正确。
Exception in thread "main" org.xml.sax.SAXParseException; systemId: file:/G:/java/configuration.dtd; lineNumber: 2; columnNumber: 3; 文档类型声明包含或指向的标记声明必须格式正确。
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:257)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:348)
at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:205)
at xmltext.Text.main(Text.java:20)
如果把xml中的<!DOCTYPE configuration SYSTEM "G:\java\configuration.dtd">这句删除掉就可以正确解析,是我的dtd错了吗? 展开
<?xml version="1.0"?>
<!DOCTYPE configuration SYSTEM "G:\java\configuration.dtd">
<configuration>
<title>dasdasd</title>
<name>helvetiaca</name>
<size>36</size>
<font>njknk</font>
</configuration>
我的dtd文档是:
<!ELEMENT configuration (title,name,size,font)>
<!ElEMENT title (#PCDATA)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT size (#PCDATA)>
<!ELEMENT font (#PCDATA)>
我用的是DOM解析,我检查了好几遍xml和dtd没发现错误,可是一解析就出现:
[Fatal Error] configuration.dtd:2:3: 文档类型声明包含或指向的标记声明必须格式正确。
Exception in thread "main" org.xml.sax.SAXParseException; systemId: file:/G:/java/configuration.dtd; lineNumber: 2; columnNumber: 3; 文档类型声明包含或指向的标记声明必须格式正确。
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:257)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:348)
at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:205)
at xmltext.Text.main(Text.java:20)
如果把xml中的<!DOCTYPE configuration SYSTEM "G:\java\configuration.dtd">这句删除掉就可以正确解析,是我的dtd错了吗? 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询