在这种情况下,我SAX解析包含Base64编码的zlib压缩数据元素的XML文件。我知道如何解码和解压缩数据。问题是我不想一次在内存中完成所有操作。我希望以块的形式进行,解码/解压缩 - 块大块。
我的方法就是这个......
public void characters(char ch[], int start, int length) throws SAXException {
// make a new string from ch
// decode -- I think I need to make sure the String length is a multiple of 4?
// create ByteArrayInputStream from the String
}
我有一个扩展FilterInputStream
的类,它保存多个ByteArrayInputStreams
,直到它们准备好被读取。它仍然有bug,但它已经到了那里。我想知道这种方法是否有意义,或者我是否在这里重新发明轮子。有没有更简单的方法来解决这个问题?
答案 0 :(得分:0)
是的,只需使用FilterInputStream
,就可以了。