«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Какую реализацию Sax Sanger, `org.xml.sax` или` android.sax`, лучше всего подходит для моих потребностей в анализе XML?

Какую реализацию Sax Sanger, `org.xml.sax` или` android.sax`, лучше всего подходит для моих потребностей в анализе XML?

Опубликовано в 2025-02-24
Просматривать:415

Which SAX Parser Implementation, `org.xml.sax` or `android.sax`, Is Best for My XML Parsing Needs?

Как разобрать XML, используя Sax parser

При использовании SAX для анализа XML документы есть две основные реализации, которые нужно рассмотреть: org. Xml.sax и Android.sax. Каждая реализация имеет свои собственные преимущества и недостатки. Это требует вручную обработать слушателей событий для различных событий XML, таких как элементы начала/конечного и конечности и данные символов. Хотя этот подход предлагает большую гибкость, он может привести к более многословскому и повторяющемуся коду.

public Class examplehandler Extends Delaulthandler { // Инициализировать POJOS (простые старые объекты Java) для хранения данных XML Частный канал канал; частные товары; частный товар; Частный логический initem = false; частный контент StringBuilder; @Override Public void StartElement (String URI, String LocalName, String QName, Attributes Atts) бросает SaxException { Content = new StringBuilder (); if (localname.equalsignorecase ("канал")) { канал = новый канал (); } else if (localname.equalsignorecase ("item")) { initem = true; item = new item (); } } // ... оставшиеся слушатели событий ... }

android.sax реализация

public class ExampleHandler extends DefaultHandler {

    // Initialize POJOs (Plain Old Java Objects) to store XML data
    private Channel channel;
    private Items items;
    private Item item;
    private boolean inItem = false;

    private StringBuilder content;

    @Override
    public void startElement(String uri, String localName, String qName, Attributes atts) throws SAXException {
        content = new StringBuilder();
        if (localName.equalsIgnoreCase("channel")) {
            channel = new Channel();
        } else if (localName.equalsIgnoreCase("item")) {
            inItem = true;
            item = new Item();
        }
    }

    // ... Remaining event listeners ...
}

Пример открытого класса Extends Delaulthandler { // pojos для хранения данных XML Частный канал канал; частные товары; частный товар; public example () { элементы = новые элементы (); } // Добавить слушателей событий для событий элементов // ... оставшийся код ... } ]

сравнение

public class Example extends DefaultHandler {

    // POJOs to store XML data
    private Channel channel;
    private Items items;
    private Item item;

    public Example() {
        items = new Items();
    }

    // Add event listeners for element events
    // ... Remaining code ...
}
android.sax:

pros: упрощенное отображение с определением структуры XML, уменьшенный код Повторение

Cons: ограниченная гибкость в обработке комплекса XML structures

  • org.xml.sax:
Pros: Большая гибкость, лучше подходит для сложных xml -структур Многословный и повторяющийся Code

Заключение
  • выбор между android.sax и org.xml.sax зависит от сложности структуры XML и желаемой гибкости. Для простых и четко определенных XML-структур Android.Sax предлагает упрощенный подход анализа. Для более сложных структур с различными уровнями повторяющихся тегов, org.xml.sax обеспечивает больший контроль с его низкоуровневым обработкой событий 机制.
  • ]
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3