LINUX.ORG.RU

помогите с kXML2 Parser


0

0

ребят драсте, поготи пожалусто с данным парсером. обясните как он работает. а то я всё гуглю да гуглю и ничё толкового для себя найти не могу. как что нагуглю накидаю , а мне жава и говорит IndexOfBoundsException.

вот мой XML файл:

<linie>
<richtung name="Thekla">
<haltestelle name="haha" />
<haltestelle name="haha2" />
<haltestelle name="haha3" />
</richtung>

<richtung name="Markleeberg">
<haltestelle name="haha3" />
<haltestelle name="haha2" />
<haltestelle name="haha" />
</richtung>
</linie>


вот мой код:


public void ParseDaten() throws IOException,XmlPullParserException{
InputStream in = this.getClass().getResourceAsStream(menu_filename);
InputStreamReader isr = new InputStreamReader(in);

KXmlParser parser = new KXmlParser();
parser.setInput(isr);

int eventType = KXmlParser.START_TAG;

while (eventType != KXmlParser.END_DOCUMENT) {
eventType = parser.next();
if (eventType == KXmlParser.START_TAG) {
String tagName = parser.getName();
if(tagName.equals("richtung")) {
System.err.println(tagName);
}
}
}
}

вот что говорит жава после выполнения сего:

Unable to create MIDlet Netzplan
java.lang.ArrayIndexOutOfBoundsException:
at com.sun.kvem.cldc.i18n.j2me.GenericReader.read(+139)
at java.io.InputStreamReader.read(+56)
at org.kxml2.io.KXmlParser.peek(+77)
at org.kxml2.io.KXmlParser.peekType(+5)
at org.kxml2.io.KXmlParser.nextImpl(+259)
at org.kxml2.io.KXmlParser.next(+23)
at Netzplan.ParseDaten(+45)
at Netzplan.<init>(+58)
at java.lang.Class.runCustomCode(+0)
at com.sun.midp.midlet.MIDletState.createMIDlet(+19)
at com.sun.midp.midlet.Selector.run(+22)


если бы ктонить мне мог показать где моя ошибка или хотябы написать рабочую методу парсинга было бы очень классно.

пасиба.

★★

Если парсить вообще, то есть нет никакиз привязок к kxml2 то ИМХО лучше взять JDOM - в инете много примеров, все очень просто.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.