Насколько я понимаю, вас интересует не только 100 Кб потока, но и 100 Кб потока, из которого вы можете извлекать необходимые данные. Это означает, что 100 КБ, предложенные Питером, не будут работать, так как это может привести к неправильному форматированию XML.
Вместо этого я бы предложил использовать синтаксический анализатор StAX, который даст вам возможность читать и анализировать XML напрямую из потока с возможностью остановки, когда вы достигнете предела в 100 КБ (или почти).
Для получения дополнительной информации взгляните на XMLStreamReader интерфейс (и примеры его использования). Например, вы можете зацикливаться, пока не доберетесь до START_ELEMENT
с именем «result», а затем использовать метод getTextCharacters(int sourceStart, char[] target, int targetStart, int length)
, указав в качестве размера буфера 100k.
Как вы уже упоминали, Android не имеет парсера StAX. Однако он имеет XmlPullParser с аналогичной функциональностью.