Повторное использование InputSource через жизненный цикл приложения - PullRequest
0 голосов
/ 13 августа 2011

Я использую InputSource для разбора большого XML-файла (1,2 МБ). Мне нужно сохранить этот InputSource в памяти. Я не хочу продолжать загружать его. Что лучше для этого? Я попытался использовать одноэлементный файл, но Sax Parser жалуется, что в документе отсутствует конечный тег после 2-го обращения к объектной ссылке.

Любые предложения будут с благодарностью.

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

Спасибо

1 Ответ

0 голосов
/ 13 августа 2011

Потоки «читаются один раз».Вы не должны планировать висеть на нем.Если вам нужно его содержимое в памяти, считайте его в объект или структуру данных и кэшируйте его.

...