ماهو Buffered Reader و LineReader في الجافا ، ممكن تعريفهما
و إعطاء مثال عليهمـــــــــــــــا .
ماهو Buffered Reader و LineReader في الجافا ، ممكن تعريفهما
و إعطاء مثال عليهمـــــــــــــــا .
Lovedove010 كتب:ماهو Buffered Reader و LineReader في الجافا ، ممكن تعريفهما
و إعطاء مثال عليهمـــــــــــــــا .
السلام عليكم ورحمة الله وبركاته
أخي الكريم Lovedove010
Buffered Reader و LineReader يستخدمان لقراءة البيانات الموجودة فى ملف ما وليكن مثلا من ملف text
وهما مرتبطين ببعضهما وهما عبارة عن methods فى classes جاهزة موجودة فى جافا
فمثلا :-
لقراءة البيانات الموجودة فى ملف سمه karim.txt نتبع الاتي :- طبعا أملأه بعدة قيم من عندك
اولا :- نفتح object من class اسمه file علشان اعطي له اسم الملف الذى سأتعامل معه والذى سوف استخرج منه البيانات
File f = new File("karim.txt");وطبعا ممكن اعطي له المسار كاملا الخاص بالملف ولكن هنا اعطيته الاسم فقط لان الملف موجود فى نفس مسار المشروع
ثانيا : نفتح object من class اسمه FileReader واعطيه الreferance بتاع ال file أى اعطيه f كالتالي
FileReader fr= new FileReader(f);
ودي لازم اعملها try........catch الcatch ستجدها فى نهاية الشرح
لان الملف ممكن يكون غير موجود FileNotFoundException
ثالثا:- نفتح object من class اسمه BufferedReader واعطيه الreferance بتاع ال FileReader أى اعطيه fr كالتالي
BufferedReader br = new BufferedReader(fr);
رابعا :- لحد هذه اللحظة بنعرف جافا اني هستخدم الملف karim.txt نأتي لمرحلة القراءة من الملف ودي بنستخدم لها method داخل الclass الل اسمه BufferedReader هذه الmethod اسمها readLine هي المسئوله عن قراءة اسطر أي ملف
وهذه الmethod بترجع حاجة من نوع string أي يترجع السطر اللي هي ببتقرأه لان الstring يمكن ان يخزن اي نوع من انواع البيانات ودي بنعرفها كالتالي:
String line= br.readLine();
وطبعا انا مش عارف عدد اسطر الملف اللى انا بقرأه ولذا سوف نستخدم while لكي نلف على جميع الاسطر الموجوده فى الملف
مع العلم أن
نأتي الى نهاية الملف عندما لا يوجد أسطر بها بيانات أي ان هذه السطور فارغة مثل اي ملف من نوع text تفتحه لأول مره تجده فارغ وهذه هي التي سنلعب عليها داخل while
حيث اني اخبره بأن يلف على جميع اسطر الملف الى ان يصل الى السطور الفارفة وسوف اطبع القيم أآ السطور التى سيحصل عليها وسيكون الكود كالتالى
String line= br.readLine();
while(line!=null){
System.out.println(line);
line = br.readLine();
}ومننساش هندله الtry أقصد بتاع ال catch
وده الكود بتاع ال catch
catch(FileNotFoundException E){
System.out.println(E.getMessage());
}
catch(IOException e){
System.out.println(e.getMessage());
}وهذا هو الكود النهائي لليرنامج
File f = new File("1/karim.txt");
try{
FileReader fr= new FileReader(f);
BufferedReader br = new BufferedReader(fr);
String line= br.readLine();
while(line!=null){
System.out.println(line);
line = br.readLine();
}
}
catch(FileNotFoundException E){
System.out.println(E.getMessage());
}
catch(IOException e){
System.out.println(e.getMessage());
}أظن أنك تقصد LineNumberReader وليس LineReader
LineNumberReader و BufferedReader متشابهان جدا، لأن الأول يرث من الثاني. الفرق الوحيد بينهما هو أن LineNumberReader تتيح معرفة رقم السطر الحالي الذي تتم قرائته
مثال
import java.io.LineNumberReader;
import java.io.FileReader;
public class Test {
public static void main(String[] args) throws Exception {
LineNumberReader reader = new LineNumberReader(new FileReader("file.txt"));
String currentLine;
while ((currentLine = reader.readLine()) != null) {
int currentLineNumber = reader.getLineNumber();
System.out.println(currentLineNumber + " - " + currentLine);
}
}
}السلام عليكم
انا ادرس فى الجامعة مادة تنظيم ملفات و لكن بلغة السى بلس بلس
سؤال:::
هل من السهل على ان اطبق هذة المفاهيم على الجافا دوى الحاجة لدراسة المادة من جديد بلغة الجافا؟؟؟


هذة المادة للتعامل مع الملفات
انشاء ملفات و نسخ بيانات و قراءة و كتابة بيانات بداخل ملفات و هكذا........


تم تعديل هذه المشاركة بواسطة JustPassing في 10 أبريل 2010 في 14:34
هذه العمليات متاحة تقريبا من طرف كل اللغات البرمجية.
لا يجب تعلم شيء بالتحديد، فقط ال syntax الخاصة بالجافا والclasses الخاصة بال I/O
توجد بعض الأمثلة الموجودة في موضوع الأسئلة المتبث http://www.arabteam2...howtopic=167926
تم تعديل هذه المشاركة بواسطة JustPassing في 10 أبريل 2010 في 14:32