Textfile Zeilenweise einlesen

Status
Nicht offen für weitere Antworten.

Bench

Mitglied
Hi zusammen,

versuche schon mühsam einen Textfile,welchen ich in einem Package abgelegt habe
zeilenweise in meine Midlet einzulesen. Möchte quasi ein Vokabeltrainer schreiben und mir fehlt nur noch, dass
ich die Vokabeln eben aus einem Textfile Zeilenweise auslesen kann und dann verarbeiten kann!!!

Normal mach ichs mit dem BufferedReader. Aber geht hier ja nicht!!!
Vielleicht kann mir jemand helfen, wie ich das Zeilenweise einlesen schaffe!!!!!????


Vielen Dank schon mal

Bless Bench
 
S

stev.glasow

Gast
Vom Prinzip her so:

Code:
	public static String readLine(InputStream in) throws IOException{
		StringBuffer buf = new StringBuffer();
		
		int r;
		while((r = in.read()) != -1){
			if(r == '\r') continue;			
			else if(r == '\n') break;
			else buf.append((char)r);
		}
		
		return r == -1 && buf.length() == 0? null: buf.toString(); 
	}

Code:
		InputStream  in = new ByteArrayInputStream("line1\nline2\r\nline3".getBytes());
		String line;
		while((line = readLine(in)) != null){
			System.out.println(line);
		}

Du kannst auch beim read() mit nem Buffer arbeiten dann geht das lesen schneller(meist), aber ist vom Prinzip das gleiche .. du musst halt nach \r und \n ausschauhalten.
 

Bench

Mitglied
Hi,

also schon vielen Dank!
Sieht sehr vielversprechend aus!
Jetzt hät ich nur noch eine kleine Frage:

Wo geb ich genau den "Pfad" des Textfiles an???


Code:
InputStream in = new BufferedInputStream( new FileInputStream("texte/Vokabeln.txt"));

geht ja leider nicht!!!

Steigt nähmlich bei dem deinem Code noch nicht wirklich durch!!!:-(

Bin leider noch nicht so fit!!!!

Wär cool wenn du mir das noch beantworten könntest!?!?!

Vielen Dank

Bless Bench
 

L-ectron-X

Gesperrter Benutzer
So sollte es gehen.
Code:
BufferedReader reader = new BufferedReader(new FileReader("texte/Vokabeln.txt"));

Edit: Ups, wir sind ja in der ME-Sektion. Keine Ahnung, ob das da auch so funktioniert.
 
S

stev.glasow

Gast
Versuch mal:
InputStream in = new BufferedInputStream(DasMidlet.class.getResourceAsStream("texte/Vokabeln.txt"));

Anstelle von 'DasMidlet' den Klassennamen von deinem Midlet nehmen.
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben