// Blocking. public void parseLoc( InputStream in ) throws IOException { Reader reader = new InputStreamReader( in ); XmlParser parser = new XmlParser( reader ); ParseEvent pe = null; Attribute atr = null; pe = parser.read(); parser.skip(); parser.read(Xml.START_TAG, null, "loc"); boolean trucking = true; boolean first = true; int index = 0; while (trucking) { pe = parser.read(); if (pe.getType() == Xml.START_TAG) { String name = pe.getName(); if (name.equals("waypoint")) { // bude citat dokym nenajde ukoncovaci tag k while ((pe.getType() != Xml.END_TAG) || (pe.getName().equals(name) == false)) { pe = parser.read(); // zacina element // meno elementu je name if (pe.getType() == Xml.START_TAG && pe.getName().equals("name")) { atr = pe.getAttribute(0); // skusime najprv s nulou if (atr.getName() == "id") { Debug.debug( "ID: " + atr.getValue() ); } pe = parser.read(); Debug.debug( "NAME: " + pe.getText() ); } else if (pe.getType() == Xml.START_TAG && pe.getName().equals("type")) { // pe.getAtr } else if (pe.getType() == Xml.START_TAG && pe.getName().equals("link")) { // pe = parser.read(); } index++; } } else { // TU KUKAJ ;) <- to je ak by tam bol dajaky element, co nie je wayponot Debug.debug( "nespravny .loc XML: " + pe.getName() ); Debug.debug( "nespravny .loc XML: " + pe.getText() ); } } // koniec xml if (pe.getType() == Xml.END_TAG && pe.getName().equals("loc")) trucking = false; } }