读取doctype system“.dtd”错误的xml文件

p5fdfcr1  于 2021-07-09  发布在  Java
关注(0)|答案(1)|浏览(353)

我正在尝试读取具有以下标头的xml文件:

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="MeasDataCollection.xsl"?>
<!DOCTYPE mdc SYSTEM "MeasDataCollection.dtd">

我使用以下方法创建此文件的路径名:

String filePathName = appProperties.getProperty("xmlFilesLocation") + "/" +
 appProperties.getProperty("adaptorLA") + "/" + tempName; //tempName is the file's name, it is file.xml here

我正试图用另一种方法重新打开并解析这个文件:

DocumentBuilder documentBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
Document document = documentBuilder.parse(file);

这是我的程序崩溃的地方,我得到一个错误,文件“measdatacollection.dtd”不存在。我并没有把这个文件名指定给我试图解析的路径,但似乎不知何故它弄乱了我的文件名。
我很难理解这个“医生类型。。。系统…“的意思和它如何影响我的代码。
感谢所有的帮助。

sulc1iza

sulc1iza1#

检查此问题的答案以禁用dtd读取:在xom中解析xhtml文档时dtd下载错误
dtd用于定义xml结构,还可以定义xml实体。如果是这种情况,如果您不读取dtd,那么xml解析可能会失败,您将不得不尝试。

相关问题