Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

проблема с startElement() в SAX-парсере - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android смена размера/позиции лаяута http://www.cyberforum.ru/android-dev/thread412867.html
меняю позицию и размер лаяута так: AbsoluteLayout.LayoutParams params; params = new AbsoluteLayout.LayoutParams(width, 275, 0, 105); params.height=(int)koof*275; ...
Программирование Android Hello, world Android SDK на смартфон Здравствуйте. Мое первое приложение работает на android 4.0 на AVD на компе, но у меня нет телефона - он есть у брата. Чтобы зря не тревожить его подскажите пожалуйста достаточно ли скинуть на его... http://www.cyberforum.ru/android-dev/thread412578.html
time&timers in android Программирование Android
Всем добрый день. Как правильно содать обычные часы на андроид выводящи время в формате чч:мм:сс АМ/РМ? и какие особенности таймеров в андроид? ибо после .NET трудновато понять что и как в андроиде.
Есть концепт приложения, где найти компаньонов-помощников? Программирование Android
Друзья, есть концепт мобильного приложения (под андроид), мысли оформлены в более-менее законченном виде. Хочется видеть проект реализованным, но для этого мне нужен товарищ-программист и желательно...
Программирование Android Почему приложение не соединяется с сервером? http://www.cyberforum.ru/android-dev/thread409611.html
Я написал приложение, используя NetBeans 7.0.1, плагин nbandroid. Оно должно соединится с сервером и обработать результат. В приложении есть следующие строчки: URL url = new...
Программирование Android Запись текста в начало файла Всем привет! Есть файл .txt в каталоге res/raw и код, который записывает в этот файл значение переменной типа String. Но запись происходит в конец файла: OutputStream ToRecordsFile;... подробнее

Показать сообщение отдельно
skw
Сообщений: n/a

проблема с startElement() в SAX-парсере - Программирование Android

20.12.2011, 23:36. Просмотров 898. Ответов 0
Метки (Все метки)

Всем привет!
Пишу первое приложения для android. Уже долго мучаюсь с такой проблемой: нужно разобрать xml, который приходит из интернета. Сама xml приходит, засовывается в String и скармливается SAXParser`у. Все бы ничего, но в парсере не работает метод

public void startElement(String namespaceURI, String localName,
String qName, Attributes atts) throws SAXException {
}

В отладчике слежу за процессом выполнения приложения - срабатывает endElement, но ни разу startElement. Во всех примерах в интернете перед методом стоит @Override, но у меня среда выдает ошибку "The method startElement(String, String, String, Attributes) of type wikiXmlHandler must
override or implement a supertype method" и просит @Override удалить. Помогите новичку
Код класса ниже..

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
/*
 * SAXParser
 * класс анализа xml 
 */
package skw.bnet.model;
 
import java.util.ArrayList;
import java.util.jar.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
 
 
public class wikiXmlHandler extends DefaultHandler {
 
 
    private ArrayList<wikiSearchResult> result;
    private boolean in_Text = false;
    private boolean in_Description = false;
    private boolean in_Url = false;
 
    // constructor
    public wikiXmlHandler() {
        this.result = new ArrayList<wikiSearchResult>();
    }
 
    // возвращаем обработанные из XML данные
    public ArrayList<wikiSearchResult> getResult() {
        return this.result;
    }
 
    @Override
    public void startDocument() throws SAXException {
    }
 
    @Override
    public void endDocument() throws SAXException {
    }
 
    public void startElement(String namespaceURI, String localName,
            String qName, Attributes atts) throws SAXException {
        try {
            if (localName.equals("Item")) {
                this.result.add(new wikiSearchResult());
            }
            else if (localName.equals("Text")) {
                this.in_Text = true;
            }
            if (localName.equals("Description")) {
                this.in_Description = true;
            }
            if (localName.equals("Url")) {
                this.in_Url = true;
            }
        }
        catch (Exception e) {
 
        }
    }
 
    public void endElement(String namespaceURI, String localName, String qName)
            throws SAXException {
        if (localName.equals("Text")) {
            this.in_Text = false;
        }
        if (localName.equals("Description")) {
            this.in_Description = false;
        }
        if (localName.equals("Url")) {
            this.in_Url = false;
        }
    }
 
    @Override
    public void characters(char ch[], int start, int lenght) {
        if (in_Text) {
            this.result.get(this.result.size() - 1).setText(
                    new String(ch, start, lenght));
        }
        else if (in_Description) {
            this.result.get(this.result.size() - 1).setDescription(
                    new String(ch, start, lenght));
        }
        else if (in_Url) {
            this.result.get(this.result.size() - 1).setUrl(
                    new String(ch, start, lenght));
        }
    }
}
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru