文档类型声明为根元素类型“的plist”必须以结束“>”

问题描述:

我有xml文件的这样的报头:文档类型声明为根元素类型“的plist”必须以结束“>”

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"/> 

<plist version="1.0"> 
    <dict> 
     <key>frames</key> 
    </dict> 
</plist> 

我想使用org.w3c.dom.Document读取它。当我在此代码

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); 
DocumentBuilder builder = factory.newDocumentBuilder(); 
document = builder.parse(path); 

解析它,我得到以下异常:

[Fatal Error] atlas_ID117.plist:2:102: The document type declaration for root element type "plist" must end with '>'. 
Exception in thread "main" java.lang.NullPointerException 
    at main.PlistReader.findFramesList(PlistReader.java:36) 
    at main.PlistReader.<init>(PlistReader.java:32) 
    at main.Main.main(Main.java:12) 

结果builder.parse方法返回null。但我不能改变XML文件!

如何解决这个问题?

DOCTYPE不是一个元素,最后没有固体。所以删除/之前的>

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"/> 
Here ------------------------------------------------------------------------------------------------^