ما هو الفرق بين BufferedReader و InputStreamReader في Java؟


الاجابه 1:
  • ينشئ InputStreamReader كائن دفق جديد ، والذي يمكن استخدامه لقراءة البيانات من المصدر المحدد. إنه جسر من تيارات البايت إلى تيارات الشخصيات. يقرأ البايت ويقوم بفك تشفيرها في حروف باستخدام مجموعة حروف محددة. قد يتم تحديد مجموعة الأحرف التي تستخدمها بالاسم أو قد يتم قبول مجموعة الأحرف الافتراضية للمنصات. BufferedReader عبارة عن تجريد يقرأ النص من دفق إدخال الأحرف. يقوم بتخزين الأحرف لتوفير قراءة فعالة للأحرف والخطوط. إنه فئة تستخدم لقراءة النص من دفق إدخال قائم على الحرف. يمكن استخدامه لقراءة البيانات سطراً سطراً بواسطة طريقة readLine (). يجعل الأداء بسرعة. يرث الطبقة القارئ.

الاجابه 2:

InputStreamReader عبارة عن جسر من تدفقات البايت إلى تدفقات الأحرف: فهو يقرأ البايتات ويقوم بترميزها إلى أحرف باستخدام مجموعة حروف محددة. قد يتم تحديد مجموعة الأحرف التي تستخدمها بالاسم أو قد يتم تقديمها بشكل صريح ، أو قد يتم قبول مجموعة الأحرف الافتراضية للنظام الأساسي.

قد يتسبب كل استدعاء لأحد أساليب القراءة () لـ InputStreamReader في قراءة بايت واحد أو أكثر من دفق بايت الإدخال الأساسي. لتمكين التحويل الفعال للبايتات إلى أحرف ، قد يتم قراءة البايتات أكثر من الدفق الأساسي بشكل أكبر من اللازم لتلبية عملية القراءة الحالية.

لتحقيق أعلى كفاءة ، ضع في الاعتبار التفاف InputStreamReader داخل BufferedReader. فمثلا:

 BufferedReader في
   = جديد BufferedReader (InputStreamReader جديد (System.in)) ؛
الطبقة العامة BufferedReader يمتد القارئ

يقرأ النص من دفق حرف - إدخال ، تخزين مؤقت للأحرف لتوفير القراءة الفعالة للأحرف والمصفوفات والخطوط.

قد يتم تحديد حجم المخزن المؤقت ، أو يمكن استخدام الحجم الافتراضي. الافتراضي كبير بما فيه الكفاية لمعظم الأغراض.

بشكل عام ، يؤدي كل طلب قراءة مصنوع من قارئ إلى تقديم طلب قراءة مطابق للحرف الأساسي أو دفق البايت. لذلك يُنصح بالالتفاف على BufferedReader حول أي قارئ قد تكون عمليات القراءة () فيه مكلفة ، مثل FileReaders و InputStreamReaders. فمثلا،

 BufferedReader في
   = new BufferedReader (FileReader جديد ("foo.in")) ؛

الاجابه 3:

المرجع: Decodejava.com تقديم جافا تعليمي بسيط وسهل

تستهلك عمليات إدخال / إخراج الملفات الكثير من الموارد المهمة وتستهلك الكثير من الوقت. وبالتالي ، فإن قراءة جزء من الأحرف من ملف وتخزينه في مخزن مؤقت محلي للمعالجة اللاحقة يكون أسرع ومن قراءة حرف في وقت واحد ، خارج الملف.

وبالتالي ، يتم استخدام فئة BufferedReader لإنشاء دفق قارئ تم تخزينه مؤقتًا يتم من خلاله قراءة جزء من الأحرف من ملف ونقله إلى مخزن مؤقت محلي لاستخدامه لاحقًا.

لمعرفة المزيد حول BufferedReader مع مثال التعليمات البرمجية البسيطة ، يمكنك قراءة Java BufferedReader Class - Decodejava.com

يتم التفاف InputStreamReader حول دفق الإدخال (الذي يقرأ بالبايت) لقراءة البيانات في شكل أحرف منه ، وبالتالي تعمل فئة InputStreamReader كمحول للبايت إلى أحرف.

لمعرفة المزيد حول InputStreamReader مع مثال التعليمات البرمجية البسيطة ، يمكنك قراءة Java InputStreamReader Class - Decodejava.com

آمل أن يساعد ،

حظا سعيدا!


الاجابه 4:

المرجع: Decodejava.com تقديم جافا تعليمي بسيط وسهل

تستهلك عمليات إدخال / إخراج الملفات الكثير من الموارد المهمة وتستهلك الكثير من الوقت. وبالتالي ، فإن قراءة جزء من الأحرف من ملف وتخزينه في مخزن مؤقت محلي للمعالجة اللاحقة يكون أسرع ومن قراءة حرف في وقت واحد ، خارج الملف.

وبالتالي ، يتم استخدام فئة BufferedReader لإنشاء دفق قارئ تم تخزينه مؤقتًا يتم من خلاله قراءة جزء من الأحرف من ملف ونقله إلى مخزن مؤقت محلي لاستخدامه لاحقًا.

لمعرفة المزيد حول BufferedReader مع مثال التعليمات البرمجية البسيطة ، يمكنك قراءة Java BufferedReader Class - Decodejava.com

يتم التفاف InputStreamReader حول دفق الإدخال (الذي يقرأ بالبايت) لقراءة البيانات في شكل أحرف منه ، وبالتالي تعمل فئة InputStreamReader كمحول للبايت إلى أحرف.

لمعرفة المزيد حول InputStreamReader مع مثال التعليمات البرمجية البسيطة ، يمكنك قراءة Java InputStreamReader Class - Decodejava.com

آمل أن يساعد ،

حظا سعيدا!