有没有办法获取XMLStreamReader读入的字节数,我使用的是java.io.FileReader,它被传递到创建xml阅读器的工厂。我怀疑XMLStreamReader是否可行,但任何解决方法都很棒。
答案 0 :(得分:1)
一种流行的方法是创建一个ByteCountingReader(Reader r);
,我想我不必再具体了: - )
答案 1 :(得分:1)
假设你做的是这样的事情:
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对象读取的字节数。