SAXParser 捕获字节数/偏移量

发布于 2024-10-31 23:08:56 字数 286 浏览 1 评论 0原文

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

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

Like in this question I am trying to record the exact position when parsing XML.

I already use the SAX Locator passed to setDocumentLocator() to record the line and column number but that doesn't give the offset from the beginning of the file. Is there a way to find the number of bytes read so far by the SAX parser or offset of each line without re-reading the whole file?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

别再吹冷风 2024-11-07 23:08:56

假设,您可以使用 Apache commons IO 中的 CountingInputStream。

Hypothetically, you can use the CountingInputStream from Apache commons IO.

貪欢 2024-11-07 23:08:56

I found another question and answer which suggests using an XMLStreamReader instead of SAXParser because it has getLocation().getCharacterOffset() instead. It already has exactly what I need.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文