ERLEDIGT
JA
JA
ANTWORTEN
7
7
ZUGRIFFE
599
599
EMPFEHLEN
-
Hi Leute, ich hab mich schon dumm und dämlich gesucht doch leider bisher nichts finden können
. Mein Problem ist folgendes:
Ich habe eine htmlCode eingelesen:
BSP:
Code java:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
<tr> <td> 2011-10-31 17:19:15.0 </td> <td align="center"> 29.0 </td> </tr> <tr> <td> 2011-10-31 17:22:14.0 </td> <td align="center"> 28.0 </td> </tr>
Daraus entferne ich jetzt alle html Zeichen mit:
Code java:1
String string1 = htmlCodeData.replaceAll("\\<.*?\\>", "");
das funktioniert somit alles ganz gut. Dann splitte ich den Code bei " " (leerzeichen) und speicher die einzelnen splits in eine ArrayListe:
Code java:1 2 3 4 5 6
String split[] = string1.split(" "); ArrayList<String> list = new ArrayList<String>(); for(int i=0; i < split.length; i++){ list.add(split[i]); }
Jetzt habe ich folgendes Schema in der Liste: (viele elemente sind leerzeilen oder leerzeichen ich weiß leider nicht genau?) und in anderen elementen stehen die Datumangaben und werte.
Jetzt würde ich gerne alle elemente aus der ArrayList löschen die kein Datum oder Wert enthalten --> also ein leerzeichen oder eine leerzeile (Leerstring) enthalten so dass ich dann nur noch die wichtigen daten in der arrayList habe.
Code java:1 2 3 4 5 6 7 8
for(int j=0; j < list.size(); j++){ if(list.get(j).equals(" ")) { list.remove(j); } } for(int k=0; k < list.size(); k++){ System.out.println(list.get(k)); }
Doch wenn ich das dann ausgebe ist alles unverändert... ich habe es auch schon statt dem " " mit "\n" probiert doch leider zeigt das auch keine wirkung... was mach ich falsch****?
Ich hoffe dringend auf eure Hilfe!
Vielen Dank im Voraus
PS: Oder hat viell jmd eine effektivere Lösung wie ich die Daten extrahieren kann********Geändert von Kumaro (31.10.11 um 20:37 Uhr)
-
31.10.11 19:13 #2SE Tutorials.de Gastzugang
Ich würde hier sowas versuchen :
verwenden um schon VOR dem adden alle Whitespaces zu entfernen.Code java:1 2 3 4
if(split[i].trim().equals("")) continue; else list.add(split[i]);
Alternativ würde das auch noch mit RegEx ganz gut klappen.
-
Hi danke schonmal für deine Antwort. ich hab das mal so eingebaut ...aber es scheint nicht zu funktionieren:
Code :1 2 3 4 5 6 7 8 9
String split[] = string1.split(" "); ArrayList<String> list = new ArrayList<String>(); for(int i=0; i < split.length; i++){ if(split[i].trim().equals(" ")) continue; else list.add(split[i]); }
Die Ausgabe sieht immer noch so aus:
"
2011-10-31
20:49:13.0
10.0
"
-
31.10.11 20:41 #4SE Tutorials.de Gastzugang
Du solltest vielleicht mal Copy&Paste machen ... oder genau hinsehen ...
Ich habe auch NICHT " " geschrieben ... sondern nur ""
Wenn du mit trim() alle Whitespaces entfernst ... und dann überprüfst ob ein String ob er ein Leerzeichen enthält ... dass das FALSE ergibt sollte eigentlich klar sein.
-
Oh, klar sorry

hab jetzt
Code java:1
if(!split[i].trim().equals("") ){
genommen da sieht die Ausgabe immerhin schon so aus:
"
2011-10-31
21:43:13.0
0.0
2011-10-31
21:46:14.0
0.0
"
Wie bekomm ich die kompletten leerzeilen raus?
hab schon
Code java:1
if(!split[i].trim().equals("") && !split[i].trim().equals("\n")){
probiert aber leider ohne erfolg.
-
Hab die Lösung gefunden. So funktioniert es:
Code java:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
String string1 = htmlCodeData.replaceAll("\\<.*?\\>", ""); //ENTFERNT HTML CODE! String split[] = string1.split(" "); ArrayList<String> list = new ArrayList<String>(); for(int i=0; i < split.length; i++){ if(!split[i].trim().equals("")){ //entfernt alle leerzeichen vor und hinter dem String list.add(split[i].trim()); // entfernt die Absätze (\n) hinter den strings } } for(int k=0; k < list.size(); k++){ System.out.println(list.get(k)); }
Vielen Dank für deine Hilfe
-
31.10.11 21:57 #7SE Tutorials.de Gastzugang
Makiere das Thema bitte als erledigt wenn dein Problem gelöst ist.
-
@kumaro: Du bist länger als ich angemeldet...da kann es doch nicht so schwer sein, nach ner halbe Stunde lesen von Spikees Post auf den Button zu drücken?
@Spikee: Die User schaffen das Generell nicht mehr...
(kumaro: Nicht auf dich bezogen, sondern Allgemein).
Ich glaub, 80% von deinen Erledigt-Button-Hinweisen drücke ich
Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
"Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?
Ähnliche Themen
-
ArrayList<ArrayList<String>> ausgeben?
Von fartos im Forum JavaAntworten: 3Letzter Beitrag: 18.10.11, 19:22 -
ArrayList elemente löschen
Von DaSuckOOr im Forum Java GrundlagenAntworten: 5Letzter Beitrag: 09.04.08, 09:07 -
Inhalt einer ArrayList in andere ArrayList kopieren
Von Pierre im Forum .NET ArchivAntworten: 2Letzter Beitrag: 05.07.05, 16:58 -
Doppelte Einträge aus einem Arraylist löschen
Von Planet_Mars im Forum .NET ArchivAntworten: 2Letzter Beitrag: 02.03.05, 10:31 -
Steuerelement löschen ohne Arraylist
Von winnitou im Forum .NET ArchivAntworten: 7Letzter Beitrag: 29.06.04, 00:36





Zitieren

Login





