1. Gingerbread, 01.02.2011 #1
    Gingerbread

    Gingerbread Threadstarter Android-Hilfe.de Mitglied

    Habe mittels urlconnection versucht auf eine Homepage zuzugreifen. Hat auch einwandfrei geklappt.
    Mit folgendem Code habe ich dann eine einfach Textdatei ausgelesen:
    Code:
    InputStream is = ucon.getInputStream();
            		BufferedInputStream bis = new BufferedInputStream(is);
                    
                    
                    ByteArrayBuffer baf = new ByteArrayBuffer(50);
                    int current = 0;
                    while((current = bis.read()) != -1){
                            baf.append((byte)current);
                    }
    
    Wie kann ich jetzt einzelne Elemente einer Homepage ansprechen? Zum Beispiel einzelne Tabellen o.ä.?
     
  2. miha, 01.02.2011 #2
    miha

    miha Fortgeschrittenes Mitglied

    Das Such-Stichwort ist Parser.
    Wenn es ganz simpel sein soll kannst du mit String.indexOf("<table") den Start der Tabelle suchen und von da weiter nach dem Schema ...
     
  3. Gingerbread, 02.02.2011 #3
    Gingerbread

    Gingerbread Threadstarter Android-Hilfe.de Mitglied

    Gut das wäre eine Möglichkeit.
    Ich lade die Seite runter und suche dann die relevanten Elemente raus.

    Aber ich möchte eben nicht den kompletten Code runterladen.
    Ist das möglich oder so schwer umzusetzen, dass es sich im Endeffekt nicht lohnt?
     
  4. miha, 02.02.2011 #4
    miha

    miha Fortgeschrittenes Mitglied

    Ich glaube der HTML-Code fällt nicht so ins Gewicht (kommt natürlich drauf an wie oft du lädst ;) spiegel.de ist glaube ich so 150KB und auch da machen erst die Bilder was aus. Dein bytearray ist mit 50 vielleicht auch etwas klein im Vergleich zur Datenübertragungsgeschwindigkeit heute.
    Du kannst natürlich auch schon beim Lesen parsen - dann brauchst du den Rest nicht mehr lesen den du nicht willst.
     
  5. Gingerbread, 02.02.2011 #5
    Gingerbread

    Gingerbread Threadstarter Android-Hilfe.de Mitglied

    Ok,
    wenn ich schon beim Lesen parse, wie funktioniert das dann genau?
    Ich habe die Daten sonst ja erst nach dem kompletten Lesen im String vorliegen.