- Forum-Beiträge: 6
12.09.2013, 22:12:19 via Website
12.09.2013 22:12:19 via Website
ich bin Anfänger und (versuche) java zu lernen (i.v.m. android unter eclipse).
Folgendes Problem habe ich :
aus einer Textdatei (z.B.):
Hugo;18;arbeitslos;verheiratet
Ralf;19;Student;single
.....
wird innerhalb einer while abfrage zeile für zeile bis zum ende des txt-files eingelesen.
nachdem eine zeile in z.b. zeile eingelesen wurde werden deren elemente mittels
elemente = zeile.split( Pattern.quote( ";" ) );
auf ihre elemente aufgeteilt.
die elemente werden dargestellt.
----------------------------------------------------------------------------------------------
ausserhalb der while schleife funktioniert das ansprechen des elements[2] zum beispiel um es in einer neuen view anzuzeigen, innerhalb nicht mehr. ich vermute da elemente bereits vorhanden ist.
wie kann ich das problem lösen?
mein (Teil)Code:
while ((zeile = in.readLine()) != null) {
// in zeile befindet sich die eingelesene Zeile
// jetzt wird die zeile aufgegliedert und in ein array geladen
// splitten von zeichenketten mit split()
// wir benutzen den string zeile
elemente = zeile.split( Pattern.quote( ";" ) );
System.out.println( Arrays.toString(elemente) );
TextView zeile2 = new TextView (this);
LinearLayout zeile1 = (LinearLayout)findViewById(R.id.DokViewLayout);
zeile1.addView(zeile2);
zeile2.setText(elemente[0]); // Ausgabe des ersten Elements JEDER Zeile
setContentView(zeile1);
}
*** lass ich die schleife weg, funktionierts:
elemente = zeile.split( Pattern.quote( ";" ) );
System.out.println( Arrays.toString(elemente) );
TextView zeile2 = new TextView (this);
LinearLayout zeile1 = (LinearLayout)findViewById(R.id.DokViewLayout);
zeile1.addView(zeile2);
zeile2.setText(elemente[0]); // Ausgabe des ersten Elements JEDER Zeile
setContentView(zeile1);
ABER EBEN NUR EINE ZEILE !!!!!!
— geändert am 13.09.2013, 14:04:39