如何在Java中读取没有DTD或模式的XML文件

时间:2011-06-21 15:12:35

标签: java xml

我们有一个从LDAP生成的XML文件。它确实以Docroot开头,但没有DTD声明。我们尝试生成DTD,但是有太多的变体,我们被告知每个人都手动处理文件(没有DTD或模式)。 我们知道我们需要从XML读取什么,文档的格式不会改变。 所以,我的问题是阅读这个XML文件最简单的方法是什么?

3 个答案:

答案 0 :(得分:1)

SAX可能。

虽然您可能会使用JAXBSimple(我非常推荐)。

答案 1 :(得分:1)

我会使用Xstream。它不需要架构。您可以使用注释和/或命名约定来驱动映射。由于你没有架构,如果你的xml格式不正确,你可能会得到一些古怪的行为,但它总比没有好。

答案 2 :(得分:1)

大多数未经验证的XML解析器即使没有声明DTD也会读取您的XML文件。这个列表很长而且多种多样但是nsyfn55建议你可以使用Xstream - 它非常快。