Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 读取不同的XML文件_Java_Xml - Fatal编程技术网

Java 读取不同的XML文件

Java 读取不同的XML文件,java,xml,Java,Xml,我正在制作一个简单的绘图程序,在这个程序中,用户可以将他们的工作保存到XML文件中;这些XML文件有两种不同的模式 在加载时,我希望我的程序能够理解这两种模式。也就是说,程序在不知道文件使用哪种模式的情况下读取文件 我应该如何处理这个问题?我只是尝试读取强制执行一个模式,如果它无法验证,则返回到另一个模式。我只是尝试读取强制执行一个模式,如果它无法验证,则返回到另一个模式。我认为这取决于您用来读取XML文件的XML系统 如果您的XML解析器足够灵活,请检查解析树中的差异,这将有助于指示使用了哪个

我正在制作一个简单的绘图程序,在这个程序中,用户可以将他们的工作保存到XML文件中;这些XML文件有两种不同的模式

在加载时,我希望我的程序能够理解这两种模式。也就是说,程序在不知道文件使用哪种模式的情况下读取文件


我应该如何处理这个问题?

我只是尝试读取强制执行一个模式,如果它无法验证,则返回到另一个模式。

我只是尝试读取强制执行一个模式,如果它无法验证,则返回到另一个模式。

我认为这取决于您用来读取XML文件的XML系统

如果您的XML解析器足够灵活,请检查解析树中的差异,这将有助于指示使用了哪个模式。(例如,如果它们的根元素的名称不同,则可以使用该名称)


如果您的解析器没有那么灵活,我建议使用ptyx建议的答案,即尝试一种模式,如果第一种模式失败,则返回到另一种模式。

我认为这取决于您用来读取XML文件的XML系统

如果您的XML解析器足够灵活,请检查解析树中的差异,这将有助于指示使用了哪个模式。(例如,如果它们的根元素的名称不同,则可以使用该名称)


如果您的解析器没有那么灵活,我建议您使用ptyx建议的答案,即尝试一个模式,如果第一个模式失败,则返回到另一个模式。

如果文件在开始时有
DOCTYPE
,这很简单。因此,要求XML文件具有
DOCTYPE

如果文件在开始时具有
DOCTYPE
,这是很简单的。因此,需要XML文件具有
DOCTYPE