Middle
Mida teate klassist RandomAccessFile?
sobes.tech AI
Vastus AI-lt
RandomAccessFile võimaldab lugeda ja kirjutada andmeid faili mis tahes kohas. Erinevalt voogudest ei ole see InputStream või OutputStream alamklass.
Peamised omadused:
- Positsioneerimine: võimaldab liikuda failis, seades praeguse positsiooni
seek()meetodiga. - Juurdepääsurežiim: avatakse kindlal režiimil (
"r","rw","rws","rwd"). - Lugemine ja kirjutamine: toetab primitiivsete tüüpide, ridade ja baitide massiivide lugemist ja kirjutamist.
- Faili pikkus: võimaldab saada praeguse pikkuse (
length()) ja seda määrata (setLength()).
Faili avamise näide lugemiseks ja kirjutamiseks:
// RandomAccessFile
RandomAccessFile fail = new RandomAccessFile("my_file.txt", "rw");
// ... faili töötlemine
fail.close();
Failis liikumise ja lugemise näide:
// RandomAccessFile
RandomAccessFile fail = new RandomAccessFile("my_file.bin", "r");
fail.seek(100); // Liikumine 100. baitini
byte b = fail.readByte(); // Ühe baitide lugemine
fail.close();
Näide kirjutamisest faili:
// RandomAccessFile
RandomAccessFile fail = new RandomAccessFile("my_output.txt", "rw");
fail.writeBytes("Hello, world!"); // Rida kirjutamine
fail.close();
Juurdepääsurežiimid:
| Režiim | Kirjeldus |
|---|---|
"r" |
Avatud lugemiseks. |
"rw" |
Avatud lugemiseks ja kirjutamiseks. |
"rws" |
Avatud lugemiseks ja kirjutamiseks koos failisisu ja metadatat uuendamisega operatsioonisüsteemi tasemel. |
"rwd" |
Avatud lugemiseks ja kirjutamiseks koos failisisu ja metadatat uuendamisega operatsioonisüsteemi tasemel (metadatat võib edasi lükata). |