Strings in Array speichern

Hallo,

ich habe folgendes Problem:

Ich möchte eine Tabelle Zeile für Zeile einlesen. Jede Zeile entspräche einem String.
Diesen String möchte ich in ein Array übergeben und dann die nächste Zeile lesen und speichern.
Leider habe ich keine Ahnung, wie ich die Strings in mein Array bekomme.
Bis dahin hab ich folgenden Code:
[…]

FileReader fileIn = new FileReader(„c:/XYZ“);
BufferedReader buff = new BufferedReader(fileIn);

while ( (tmp = buff.readLine() ) != null) {
[…]

Somit hab ich immer nach jeder Zeile diese als String tmp. Ich will sie dann ins Array schreiben und die nächste Zeile lesen und ebenfalls ins Array (index+1) schreiben.

Das ziehl soll sein, das eingelsene am Ende zu sortieren und wieder auszugeben.

Danke für Hilfe

BC

Hi,

nimm lieber eine Collection - ein Array bietet sich hier nicht an, da du ja beim Anlegen nicht weißt, wieviel Zeilen du einlesen wirst.

Um zu sortieren, benutze am besten gleich java.util.TreeSet.

TreeSet ts = new TreeSet();

while ( (tmp = buff.readLine() ) != null) {
ts.add(tmp);
}

Und wenn du es am Ende in einem Array haben willst:
String[] result = new String[ts.size()];
ts.toArray(result);

Gruß,
Uwe

nimm lieber eine Collection - ein Array bietet sich hier nicht
an, da du ja beim Anlegen nicht weißt, wieviel Zeilen du
einlesen wirst.

Hm, ok, von „Collection“ hatte ich bisher noch nichts gehört (bin blutiger Anfänger :wink: )

Um zu sortieren, benutze am besten gleich java.util.TreeSet.

Das ding ist, dass ich versuche mir einen eigenen Sortieralgorithmus zu schreiben (ich erfinde zur Zeit ständig das Rad neu)

Und wenn du es am Ende in einem Array haben willst:
String[] result = new String[ts.size()];
ts.toArray(result);

Nein, es muss nicht unbedingt in ein Array zurück. Ich will eine neue sortierte Tabelle als neue Datei ausgeben…