#android #handler #xmlreader #saxparser
#Android #обработчик #xmlreader #saxparser
Вопрос:
Я пытаюсь проанализировать XML-файл. Это координаты gps.
Итак, есть строка с координатами широты, а с помощью longtitude
вы можете представить размер строки (например, более 29 тыс. символов)
Когда я пытаюсь его проанализировать, у меня возникает проблема, что он анализирует только 8096. Я ввел точку останова characters(char[] ch, int start, int length)
и длину только 8096.
Я попытался установить больший буфер для xmlreader, возможно, проблема с источником ввода. Или saxparser может обрабатывать только такую длину?
Ответ №1:
Попробуйте создать свой собственный класс, который реализует XmlPullParser
. Затем вы можете просто переопределить методы, которые считываются из программы чтения. Вы можете найти кое-что XmlPullParser
здесь
Комментарии:
1. Могу ли я сделать это с помощью saxparser?
Ответ №2:
Реализация saxparser заключается в том, что он вызывает characters() много раз, если строка превышает ~ 8 тыс. символов. разбор каждой части. Поэтому вам нужно просто использовать не string для хранения данных, а StringBuffer или что-то в этом роде.