G
Gelöschtes Mitglied 2635
Gast
Hallo zusammen.
Folgendes Problem. Ich arbeite mich gerade ins Thema Vector/Liste ein und schreibe dazu ein kleines Programm. Die Liste funktioniert soweit, auch das speichern in eine Datei. Wie kann ich jetzt aber die Daten (Strings) aus der Datei wieder in eine Liste einlesen? Brauche also einen Lösungsansatz für die Methode loadList(). Welchen Weg gibt's dafür? Kann mir da momentan nicht weiterhelfen.
Bin für jede Hilfe dankbar, Der Tino.
Folgendes Problem. Ich arbeite mich gerade ins Thema Vector/Liste ein und schreibe dazu ein kleines Programm. Die Liste funktioniert soweit, auch das speichern in eine Datei. Wie kann ich jetzt aber die Daten (Strings) aus der Datei wieder in eine Liste einlesen? Brauche also einen Lösungsansatz für die Methode loadList(). Welchen Weg gibt's dafür? Kann mir da momentan nicht weiterhelfen.
Bin für jede Hilfe dankbar, Der Tino.
Code:
/* Projekt Telefonliste.java
* Beschreibung Einführung zum Thema Vector
*
* @author Tino Kramm, [email]kramm@fh-brandenburg.de[/email]
* @version 1.0, 14.01.2005
*/
import java.io.*;
import java.util.*;
public class Telefonliste {
private static Vector List = new Vector();
private static BufferedReader stream = new BufferedReader(new InputStreamReader(System.in));
static final String newEntry()
throws IOException {
/**
* Eingabe eines neuen Telefoneintrages
*/
String Entry;
System.out.print("Eintragung: ");
Entry=stream.readLine();
return Entry;
}
static void showEntry(String Entry) {
/**
* Ausgabe eines Telefoneintrages
*/
System.out.println(Entry);
}
static void addEntryToList(String Entry) {
/**
* Hinzufügen eines Telefoneintrages zur Liste
*/
List.addElement(Entry);
}
static void delEntryFromList(int position)
throws ArrayIndexOutOfBoundsException {
/**
* Löschen eines Telefoneintrages aus der Liste
*/
List.removeElementAt(position);
}
static void showList() {
/**
* Ausgabe der ganzen Liste
*/
for (Enumeration el=List.elements(); el.hasMoreElements(); ) {
System.out.println(el.nextElement());
}
}
static void saveList()
throws IOException {
/**
* Liste in Datei speichern
*/
FileWriter fw = null;
fw = new FileWriter( "list.txt" );
for (Enumeration el=List.elements(); el.hasMoreElements(); ) {
fw.write(el.nextElement().toString());
}
fw.close();
}
static void loadList()
throws IOException, FileNotFoundException {
/**
* Liste aus Datei laden
*/
FileReader fr = new FileReader ( "list.txt" );
for (int c; (c=fr.read()) != -1;)
System.out.println((char) c);
fr.close();
}
public static void main(String[] args) {
/**
* Test der implementierten Methoden
*/
try {
System.out.println("Bitte machen Sie 3 Einträge");
for (int x=0; x<3; x++) addEntryToList(newEntry());
System.out.println("");
System.out.println("Ausgabe der Liste:");
showList();
System.out.println("");
System.out.println("einen Eintrag löschen...");
delEntryFromList(1);
System.out.println("");
System.out.println("Ausgabe der Liste:");
showList();
saveList();
System.out.println("");
System.out.println("Liste gespeichert...");
List.removeAllElements();
System.out.println("");
System.out.println("Liste gelöscht...");
loadList();
System.out.println("");
System.out.println("Liste geladen...");
System.out.println("");
System.out.println("Ausgabe der Liste:");
showList();
stream.close();
} catch (IOException e) {
System.out.println(e);
} catch (ArrayIndexOutOfBoundsException e2) {
System.out.println(e2);
}
}
}