通过应用程序生命周期重用InputSource

时间:2011-08-13 16:35:11

标签: java android inputstream

我正在使用InputSource来解析一个大的xml文件(1.2 mb)。我需要将此InputSource保留在内存中。我不想继续加载它。这样做的最佳原因是什么?我尝试过使用单例,但是Sax Parser抱怨在第二次访问对象引用后文档缺少结束标记。

任何建议都将不胜感激。

InputStream ins = getResources().openRawResource(R.raw.cfr_title_index);    
InputSource xmlSource = new InputSource(ins);
MySinglton.xmlInput = xmlSource;

由于

1 个答案:

答案 0 :(得分:0)

Streams是“只读一次”。你不应该打算坚持下去。如果你需要它在内存中的内容,请将它们读入一个对象或数据结构并缓存它。