Komisch. ich hab ja vor kurzem schonmal einen Tread namens "zu dumm für einen LineNumberReader" aufgemacht. Das prob hat sich zwar inzwischen gelöst, aber ich will jetzt alle Strings aus meinem Array in eine Textdatei speichern. Ich hab mir mal gedacht, ich versuchs wie das auslesen praktisch, nur umgekehrt. Zum auselsen habich nun da stehen:
Zum Schrieben habe ich dann das hier, selbes Prinzip, nur als Writer:
Mal jetzt unabhängig davon ob ein oben oder untern ein paar { oder } fehlen, das kommt beim kopieren manchmal vor :wink:
Wenn ich nun die ganzen "zeilen[]" in die Datei schrieben will, hört das ganze irgendwo bei ca einem drittel der datei auf, er schreibt zwar weiter, aber nur leere Zeilen. Auch wenn ich mir nun die zeile[500] z.b. ausgeben lasse, erhalte ich vor dem schrieben den richtigen Wert, nach dem schrieben einfach eine Leerzeile. Was mache ich falsch? Kann es sien dass ich mit dem großen Array einfach den schriebbuffer überziehe?
Code:
String[] zeile = new String[926];
LineNumberReader lnr = null;
int aktZeile;
int aktZeileSchr;
try {
lnr = new LineNumberReader(new FileReader("Oblivion.ini"));
}
catch (Exception e) {
e.printStackTrace();
}
// Schleife zum Auslesen
aktZeile = 0;
while (aktZeile < 926) {
try {
zeile[aktZeile] = lnr.readLine();
System.out.println(zeile[aktZeile]);
aktZeile ++;
}
catch (Exception e) {
e.printStackTrace();
}
}
Zum Schrieben habe ich dann das hier, selbes Prinzip, nur als Writer:
Code:
BufferedWriter bfr = null;
try {
bfr = new BufferedWriter(new FileWriter("OblivionTEMP.ini"));
}
catch (Exception e) {
e.printStackTrace();
}
aktZeileSchr = 0;
while (aktZeileSchr < 926) {
try {
bfr.write(zeile[aktZeileSchr]
bfr.newLine();
aktZeileSchr ++;
}
catch (Exception e) {
e.printStackTrace();
}
Mal jetzt unabhängig davon ob ein oben oder untern ein paar { oder } fehlen, das kommt beim kopieren manchmal vor :wink:
Wenn ich nun die ganzen "zeilen[]" in die Datei schrieben will, hört das ganze irgendwo bei ca einem drittel der datei auf, er schreibt zwar weiter, aber nur leere Zeilen. Auch wenn ich mir nun die zeile[500] z.b. ausgeben lasse, erhalte ich vor dem schrieben den richtigen Wert, nach dem schrieben einfach eine Leerzeile. Was mache ich falsch? Kann es sien dass ich mit dem großen Array einfach den schriebbuffer überziehe?