Sobes.tech
Middle

Шумо дар бораи синфи RandomAccessFile чӣ медонед?

sobes.tech AI

Ҷавоб аз AI

RandomAccessFile უზრუნველყოფს მონაცემების წაკითხვასა და ჩაწერას ფაილში ნებისმიერ ადგილას. განსხვავებით ნაკადებისგან, ის არ არის InputStream ან OutputStream-ის ქვესახე.

ძირითადი მახასიათებლები:

  • პოზიციონირება: საშუალებას აძლევს ფაილში გადაადგილებას, მიმდინარე პოზიციის მითითებით seek() მეთოდით.
  • წვდომის რეჟიმი: იხსნება განსაზღვრულ წვდომის რეჟიმში ("r", "rw", "rws", "rwd").
  • კითხვა და დაწერა: მხარს უჭერს პრიმიტიული ტიპების, სტრიქონებისა და ბაიტების მასივების კითხვა და დაწერას.
  • ფაილის სიგრძე: საშუალებას აძლევს მიიღოს მიმდინარე სიგრძე (length()) და დააყენოს იგი (setLength()).

ფაილის გახსნა კითვისა და დაწერისთვის მაგალითით:

// RandomAccessFile
RandomAccessFile file = new RandomAccessFile("my_file.txt", "rw");
// ... დამატებითი სამუშაო ფაილთან
file.close();

ფაილში გადაადგილებისა და კითხვას მაგალითით:

// RandomAccessFile
RandomAccessFile file = new RandomAccessFile("my_file.bin", "r");
file.seek(100); // გადასვლა 100-ე ბაიტზე
byte b = file.readByte(); // ერთი ბაიტის კითხვა
file.close();

ფაილში დაწერის მაგალითით:

// RandomAccessFile
RandomAccessFile file = new RandomAccessFile("my_output.txt", "rw");
file.writeBytes("Hello, world!"); // სტრიქონის დაწერა
file.close();

წვდომის რეჟიმები:

რეჟიმი აღწერა
"r" გახსნა კითვისთვის.
"rw" გახსნა კითვისა და დაწერისთვის.
"rws" გახსნა კითვისა და დაწერისთვის, სინქრონული განახლებით ფაილის შიგთავსისა და მეტადატების ოპერაციული სისტემის დონეზე.
"rwd" გახსნა კითვისა და დაწერისთვის, სინქრონული განახლებით ფაილის შიგთავსისა ოპერაციული სისტემის დონეზე (მეტადატები შეიძლება იყოს გადადებული).