![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| LSD |
|
||||||||||||||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
SAX - это событийный парсер для XML, т.е. он последовательно читает и рабирает данные из входного потока (это может быть файл, сетевое соединение, или любой другой InputStream). Когда парсер находит структурный элемент (открывающий тег, закрывающий тег, и т.п.), он оповещает об этом слушателя, и передает ему в качестве параметра найденый элемент. Слушатель делает все необходимые операции для данного элемента.
Работа с SAX выглядит так: 1. Создаем свой обработчик событий, наследуя его от базового класса DefaultHandler, и переопределяем в нем нужные нам методы. Пусть нам надо занести данные из всех элементов <user> в ArrayList.
2. Создаем фабрику парсеров и создаем парсер:
3. Парсим файл указав в качестве аргумента свой обработчик:
4. Если надо, можно указать парсеру, проверять документ по схеме:
Примечание: это будет работать в JDK 1.5 и старше, в более младших версиях надо будет обновить JAXP. Все вместе: Берем такой файл:
Парсим его:
Получаем на выходе:
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
||||||||||||||
|
|||||||||||||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |