1. Mitglieder surfen ohne Werbung auf Android-Hilfe.de! ✔ Jetzt kostenlos Mitglied in unserer Community werden.
  1. Sico, 28.02.2010 #1
    Sico

    Sico Threadstarter Fortgeschrittenes Mitglied

    Hallo,


    kennt jemand einen Codeschnippsel zum parsen einer XML Datei?

    Gruß

    Sico
     
  2. Shinigami, 28.02.2010 #2
    Shinigami

    Shinigami Fortgeschrittenes Mitglied

  3. SirMArtin, 28.02.2010 #3
    SirMArtin

    SirMArtin freier Samsungsupporter

    Mein kleiner XMLParser.
    Code:
    public class XMLParser {
    
      public static History parse(String xml) {
        try {
          InputStream xmlStream = new ByteArrayInputStream(xml.getBytes());
    
          DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
          Document doc = builder.parse(xmlStream);
    
          Element rootNode = doc.getDocumentElement();
    
          History h = new History();
          h.setTrackingId(rootNode.getAttribute(RestInterface.HISTORY_TRACKINGID));
          h.setLastChecked(parseDate(rootNode.getAttribute(RestInterface.HISTORY_LASTCHECKED), false));
          h.setDelivered(Boolean.parseBoolean(rootNode.getAttribute(RestInterface.HISTORY_DELIVERED)));
    
          NodeList events = rootNode.getElementsByTagName(RestInterface.EVENT);
          for (int i = 0; i < events.getLength(); i++) {
            Element event = (Element) events.item(i);
            Event e = new Event();
            h.addToEvents(e);
    
            e.setEventTime(parseDate(event.getAttribute(RestInterface.EVENT_EVENTTIME), true));
            e.setRecieveTime(parseDate(event.getAttribute(RestInterface.EVENT_RECIEVETIME), false));
    
          }
    
          return h;
        } catch (Exception e) {
          Log.e(Const.LOG_TAG, "An exception occured!", e);
          return null;
        }
      }
    
      private static String getElementValue(Element element) {
        String val = element.getChildNodes().item(0).getNodeValue();
        if (val == null)
          return "";
    
    // hier bin ich nicht sicher, ob das notwendig ist
    // ggf. funktioniert auch ein replace von "\n"
        if (val.contains("\n")) {
          val = val.replace("\n", "§§");
          StringTokenizer t = new StringTokenizer(val, "§§");
          val = "";
          while (t.hasMoreTokens()) {
            val = val + " " + t.nextToken().trim();
          }
        }
    
        return val.trim();
      }
    
      private static Date parseDate(String dateString, boolean needToFix) {
        if (StringUtils.isEmpty(dateString))
          return null;
        String[] parts = dateString.split("T");
    
        if (parts == null || StringUtils.isEmpty(parts[0]) || StringUtils.isEmpty(parts[1]))
          return null;
        String[] date = parts[0].split("-");
        String[] time = parts[1].split(":");
    
        GregorianCalendar cal = new GregorianCalendar();
        cal.set(Calendar.YEAR, Integer.parseInt(date[0]));
        cal.set(Calendar.MONTH, Integer.parseInt(date[1]) - (needToFix ? 1 : 0));
        cal.set(Calendar.DAY_OF_MONTH, Integer.parseInt(date[2]));
        cal.set(Calendar.HOUR_OF_DAY, Integer.parseInt(time[0]));
        cal.set(Calendar.MINUTE, Integer.parseInt(time[1]));
        cal.set(Calendar.SECOND, 0);
        return cal.getTime();
      }
    
    }
    
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
Daten speichern in einer Datei auf der jede Aktivität zugreifen kann Android App Entwicklung 12.05.2018
zugriff auf xml elemente bzw attribute Android App Entwicklung 26.02.2018
CSV Datei von einem Spiel ändern Android App Entwicklung 21.02.2018
xml/sharedpreferences.xml wann wird die Datei geladen? Android App Entwicklung 07.02.2018
[ERLEDIGT] Verschiedene Layouts in BottomNavigationActivity verwalten Android App Entwicklung 06.12.2017
[ERLEDIGT] Samsung S3 USB Dateien werden nicht aktualisiert Android App Entwicklung 03.08.2017
[ERLEDIGT] Android O Neue Fonts in XML Methode Android App Entwicklung 27.07.2017
[GESCHLOSSEN] Kennt jemand ein Programm , um .DEX Dateien zu öffnen, bearbeiten und wieder speichern? Android App Entwicklung 20.07.2017
Du betrachtest das Thema "XML Datei parsen!" im Forum "Android App Entwicklung",
  1. Android-Hilfe.de verwendet Cookies um Inhalte zu personalisieren und dir den bestmöglichen Service zu gewährleisten. Wenn du auf der Seite weitersurfst stimmst du der Cookie-Nutzung zu.  Ich stimme zu.