java - 获取 javax.xml.stream.XMLStreamReader 读入的字节数

标签 java xml stream

有没有办法获取 XMLStreamReader 读取的字节数,我使用的是 java.io.FileReader,它被传递到创建 xml 读取器的工厂中。我怀疑 XMLStreamReader 是否可以实现这一点,但任何解决方法都很棒。

最佳答案

假设你正在做这样的事情:

final XMLInputFactory inputFactory;
final XMLStreamReader reader;
final InputStream     stream;

inputFactory = XMLInputFactory.newInstance();
stream       = new FileInputStream(file);
reader       = inputFactory.createXMLStreamReader(stream);

你会做这样的事情:

final XMLInputFactory     inputFactory;
final XMLStreamReader     reader;
final InputStream         stream;
final CountingInputStream countingStream;

inputFactory   = XMLInputFactory.newInstance();
stream         = new FileInputStream(file);
countingStream = new CountingStream(stream);
reader         = inputFactory.createXMLStreamReader(countingStream);

其中 CoutingInputStream 是一个您需要编写/查找的类,用于跟踪从底层 InputStream 对象读取的字节数。

关于java - 获取 javax.xml.stream.XMLStreamReader 读入的字节数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/592494/

相关文章:

Scala:将文件读取为无限/异步行流

java - 全屏独占模式

java - 将 XSD 元素绑定(bind)到 Java 实现?

c++ - 什么时候对流类型使用 std::swap?

c# - 序列化时重命名 xml 模式类中的属性

python - 适合初学者的 OpenERP 报告创建

c++ - 到达流的 EOF 时,seekg() 不会设置 eofbit。是设计使然吗?

java - GAE 数据存储增量 ID

java - 如何在不使用java中的DecimalFormat类的情况下将浮点四舍五入到小数点后一位?

java - 如何使用由 .dot 分割的字符串 ArrayList 中的一个键和多个值填充 hashmap?