Code:
import java.util.*;
import java.io.*;
public class Telefonliste {
public static String telefonliste = "Telefonliste.txt";
public static BufferedReader br = new BufferedReader (new InputStreamReader(System.in));
public static void main (String[] args) throws IOException {
BufferedWriter bw = new BufferedWriter (new FileWriter(telefonliste));
FileReader fr = new FileReader(telefonliste);
String eintrag;
String antwortEintrag;
String antwortAusgabe;
List liste = new ArrayList();
try {
do {
System.out.println("Bitte geben Sie einen Namen und die Telefonnummer ein. Bsp.: 'Frank 0123456'");
eintrag = leseEintrag();
zeigeEintrag(eintrag);
speichereEintragInArrayListe(eintrag,liste);
schreibeEintragInTxt(eintrag,liste,bw);
System.out.println("Soll eine weitere Zeile hínzugefügt werden? (j/n)");
antwortEintrag = leseEintrag();
} while (antwortEintrag.equals("j"));
}
catch (IOException e) {
System.out.println("Ein- und Ausgabe Exception aufgetreten");
}
System.out.println("Soll die Telefonliste auf den Bildschirm ausgegeben werden? (j/n)");
do {
antwortAusgabe = leseEintrag();
ladeTelefonliste(br,fr);
} while (antwortAusgabe.equals("j"));
bw.close();
}
public static String leseEintrag() {
while (true) {
try {
return br.readLine();
}
catch (Exception e) {
System.err.println("Eingabefehler");
}
}
}
public static String zeigeEintrag(String eintrag) {
System.out.println(eintrag);
return eintrag;
}
public static String speichereEintragInArrayListe (String eintrag, List liste) {
liste.add(eintrag);
return eintrag;
}
public void löscheEintragInArrayListe (String eintrag, List liste) {
liste.remove(eintrag);
}
public static String schreibeEintragInTxt (String eintrag, List liste, BufferedWriter bw) throws IOException {
try {
bw.write(eintrag + "\n");
}
catch (IOException e) {
System.out.println("Ein- und Ausgabe Exception ist aufgetreten. Test");
}
return eintrag;
}
public static String ladeTelefonliste (BufferedReader br, FileReader fr) throws IOException {
String textLaden = br.readLine();
try {
while (br.ready())
System.out.println(textLaden);
}
catch (IOException e) {
System.out.println("Ein- und Ausgabe Exception ist aufgetreten.");
}
return textLaden;
}
}
Folgendes bewirkt der Code:
1. Frage nach Name und Telefonnummer zwecks Eintragung in Telefonliste.txt und Hinzufügen dieses Eintrags in die ArrayList liste.
2. Frage nach einer weiteren Eintragung in die ArrayList und in die Telefonliste.
Folgendes bewirkt der Code nicht:
1. Bei Neustart des Programms wird die txt-Datei überschrieben und nicht um weitere Einträge ergänzt.
2. Bei abschließender Frage nach Ausgabe der Liste passiert nichts.
Folgendes soll der Code tun:
1. txt-Datei jeweils ergänzen. Auch bei Neustart des Programms.
2. Die txt-Eingaben nicht neben-, sonder untereinander auflisten.
3. txt-Datei soll am Ende nach Beenden des Eintragens die Liste vollständig auslesen und auf die Konsole ausgeben.
Das soll es erstmal gewesen sein.
Vorab schon mal vielen Dank!