2

就像在这个问题中一样,我试图在解析 XML 时记录确切的位置。

Locator我已经使用传递给的 SAXsetDocumentLocator()来记录行号和列号,但这并没有给出文件开头的偏移量。有没有办法在不重新读取整个文件的情况下找到 SAX 解析器到目前为止读取的字节数或每行的偏移量?

4

2 回答 2

1

假设您可以使用来自 Apache commons IO 的 CountingInputStream。

于 2011-04-14T14:01:29.930 回答
1

我发现了另一个问题和答案,它建议使用 XMLStreamReader 而不是 SAXParser,因为它有getLocation().getCharacterOffset()。它已经有了我需要的东西。

于 2011-04-14T20:12:22.903 回答