Ich hött da ein Problem und hoff das mir hier jemand helfen kann.
Wie kann ich eine TXT-Datei in java speichern, so das ich dort Daten ein- und später wieder auslesen kann
Mauthe Gast |
Mauthe Gast |
Ich hött da ein Problem und hoff das mir hier jemand helfen kann.
Wie kann ich eine TXT-Datei in java speichern, so das ich dort Daten ein- und später wieder auslesen kann
Vielleicht geh't auch anders, besser oder einfacher ... ich mach's auf jedenfall, wie unten beschrieben:
File öffnen:
=========
try {
file = new RandomAccessFile(dname, "rw"); //f. (dname ist variable für den File-Name)
}
catch(IOException e) {
System.out.println("Fehler beim Oeffnen des Files");
System.err.println(e.toString());
System.exit(1);
}
}
File schliessen:
============
public void dateiClose(){
try {
file.close();
}
catch ( IOException io ) {
System.err.println("File not closed properly\n" + io.toString());
}
}
File lesen:
========
x = file.readByte(); //Varieble x ist von Typ Byte
Beispiel-Anwendung:
public String[] read(int recnr) throws IOException {
fpos = reclaeng * (recnr); //File-Position bestimmen (in Bytes)
record = new String[anze];
file.seek(fpos);
for(int xe = 0; xe < anze; xe++){ //liest Zeile bzw. Datenstruktur
byte engl[] = new byte[elemleng[xe]];
for (int i=0; i < engl.length; i++) { //liest Feld
engl = file.readByte(); //liest Byte
}
record[xe] = new String(engl);
}
return record;
}
File schreiben:
===========
file.writeBytes(buf.toString()); //'buf' ist Variable vom Typ StringBuffer
Beispiel-Anwendung:
public void write(String[] elemente, int recnr) throws IOException {
StringBuffer buf;
fpos = reclaeng * (recnr); //File-Position bestimmen (in Bytes)
file.seek(fpos);
for(int xw = 0; xw < anze; xw++) {
buf = new StringBuffer(elemente[xw]);
buf.setLength(elemleng[xw]);
file.writeBytes(buf.toString());
}
}
... und import java.io.*; nicht vergessen.
« c++ Pogrammierung | Excel VBA-Makro » | ||