أفضل طريقة لكتابة البايتات في منتصف ملف في جافا
سؤال
ما هي أفضل طريقة لكتابة البايتات في منتصف ملف باستخدام جافا؟
المحلول
القراءة والكتابة في منتصف الملف بسيطة مثل استخدام أ RandomAccessFile
في جافا.
RandomAccessFile
, ، على الرغم من اسمها ، أشبه InputStream
و OutputStream
وأقل مثل أ File
. يتيح لك القراءة أو البحث bytes
في ملف ثم ابدأ في الكتابة على أي من البايتات تهتم بالتوقف.
بمجرد اكتشاف هذا الفصل ، يكون من السهل جدًا استخدامه إذا كان لديك فهم أساسي للملف العادي I/O.
مثال صغير:
public static void aMethod(){
RandomAccessFile f = new RandomAccessFile(new File("whereDidIPutTHatFile"), "rw");
long aPositionWhereIWantToGo = 99;
f.seek(aPositionWhereIWantToGo); // this basically reads n bytes in the file
f.write("Im in teh fil, writn bites".getBytes());
f.close();
}
نصائح أخرى
يستخدم RandomAccessFile
افتح الملف في وضع الكتابة دون اقتطاعه ، وابحث إلى الإزاحة المطلوبة ، واكتب البيانات المطلوبة. فقط كن حذرًا بشأن النص/الوضع الثنائي.
لا تنتمي إلى StackOverflow