Ich möchte gerne Strings, die Unicodezeichen enthalten, in eine Datei speichern und daraus lesen können. Die gelesenen Strings sollen auf einem Label ausgegeben werden. Ich möchte gern RandomAccessFiles benutzen.
meine „Testmethoden“:
public static void save(String a) throws IOException{
File datei=new File(„testfile.txt“);
RandomAccessFile raf=new RandomAccessFile(datei,„rw“);
raf.writeChars(a);
raf.writeChars("\n");
}
Jetzt habe ich allerdings das Problem, dass bei der Ausgabe des gelesenen Strings auf dem Label immer Kästchen zwischen den einzelnen Zeichen angezeigt werden. Wie kann ich das verhindern oder was muss ich ändern?
writeChars(a) speichert die einzelnen Zeichen mit jeweils 2 Byte ab, die readLine() Methode erwartet aber nur 1 Byte pro Zeichen, deshalb passt dein save() und load() nicht zusammen.
Da du einen Unicode-String schreiben und lesen willst, könntest du die Methoden writeUTF(String s), sowie readUTF() benutzen. (ebenfalls in der Klasse RandomAccessFile).
gruß
Heavy
Ich möchte gerne Strings, die Unicodezeichen enthalten, in
eine Datei speichern und daraus lesen können. Die gelesenen
Strings sollen auf einem Label ausgegeben werden. Ich möchte
gern RandomAccessFiles benutzen.
Jetzt habe ich allerdings das Problem, dass bei der Ausgabe
des gelesenen Strings auf dem Label immer Kästchen zwischen
den einzelnen Zeichen angezeigt werden. Wie kann ich das
verhindern oder was muss ich ändern?