اذهب إلى المحتوى

السؤال

Recommended Posts

  • 0
نشر

كلاس RandomAccessFile يتم استخدامه لقراءة وكتابة الملفات , وعادة يتم استخدامه في الملفات الكبيرة نسبيًا, حيث باقي الكلاسات الخاصة بالتعامل مع الملفات في جافا مثل FileReader و FileWriter تقوم بقراءة الملف بشكل متسلسل, على سبيل المثال ان كان الملف طوله 100 بايت واردنا قراءة الملف من بداية البايت رقم 30 يجب ان يمر الكلاس على الملف بدايةً من البايت رقم 0 حتى يصل الى البايت المطلوب, ونفس الحال أيضًا في حالة الكتابة يقوم الكلاس FileWriter بالمرور على الملف من البايت 0 حتى البايت الذي نريد الكتابة فيه وبالطبع ان كان حجم الملف كبير يؤدي هذا الى بطئ في عملية القراءة والكتابة , بينما RandomAccessFile يوفر لنا امكانية الذهاب مباشرةً إلى بايت معين في الملف دون المرور على الملف من بدايته مما يوفر في الاداء والوقت, ومن أشهر الدوال لهذا الكلاس دالة seek والتي تحدد المكان الذي نريد الذهاب إليه في الملف 

RandomAccessFile randomfile = new RandomAccessFile("test.txt", "rw");
randomfile.seek(5);

دالة write التي تقوم بكتابة البيانات في الملف

randomfile.write("test".getBytes());

وكما تلاحظ نقوم هنا بكتابة النص عبارة عن bytes حيث لا يمكن اضافة النصوص مباشرة لذا نقوم بتحويلها الى بايتس عبر الدالة getBytes

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...