String aus Datei zeilenweisse in ein Choice

dastool

Erfahrenes Mitglied
Salve,
ich hab folgendes Problem:
String wird aus einer dateigelesen in der einzelne wörter Zeilenweisse gespeichert sind.
Diese sollen in ein Choice mit addItem gesetzt werden.
Nur hab ich grad keinen plan, wie ich das anstellen soll.

Main mit Choice
PHP:
...
private Zugriff lesen = new Zugriff();
...
ce1.addItem(lesen.lesen("artikel"));
...

Klasse Zugriff
PHP:
import java.io.*;
public class Zugriff
{
    public static void schreiben (String dateiname, String s)
    throws IOException
    {
        PrintWriter out;
        out = new PrintWriter(new FileWriter(dateiname));
        out.print(s);
        out.close();
    }
    
    public static String lesen(String dateiname)
    throws FileNotFoundException, IOException
    {
        BufferedReader in = new BufferedReader(new FileReader(dateiname));
        String line, inputstr = "";
        line = in.readLine();
        while(line != null)
        {
            inputstr = inputstr.concat(line+"\n");
            line = in.readLine();
            
        }
        in.close();
        return inputstr;
    }

}

So wird die ganze Datei in einer "Zeile" übergeben, aber wie mach ich das nun zeilenweisse, womit eine dynamik beibehalten wird (durch andere eingaben wird die Datei erweitert und hab da nun wirklich keine Lust dauernd neue Variablen etc zu setzen :))
 
Du könntest die gesamte Datei in eine ArrayList einlesen und dann durch entsprechendes Iterieren jedes Element hinzufügen:

Java:
public static ArrayList lesen(String dateiname)
	throws FileNotFoundException, IOException {
BufferedReader in = new BufferedReader(new FileReader(dateiname));
	String line;
	ArrayList lines = new ArrayList();

	line = in.readLine();
	while (line != null) {
		lines.add(line);
		line = in.readLine();
	}
	in.close();

	return lines;
}

Java:
ArrayList lines = HelloWorld.lesen("artikel");
Iterator it = lines.iterator();
while (it.hasNext()) {
	String line = (String) it.next();
	ce1.addItem(line);
}
 
Super, danke.
Habs heut Nacht nichtmehr getestet, aber es klappt :)
Nun muss ich nurnoch schauen, wie ich die Hyroglyphen an den ersten Wörtern wegbekomm (und die änderungen für ÄÖÜ vornehmen) :)
 
Zurück