فئة جافا FileInputStream

فئة جافا FileInputStream

يتم استخدام فئة FileInputStream في Java لقراءة البيانات من ملف على شكل بايت. إنه مثالي لقراءة البيانات الثنائية مثل الصور أو الملفات الصوتية. لقراءة الملفات النصية فمن الأفضل استخدامها قارئ الملفات.

  • الوصول المباشر: يقرأ محتوى الملف مباشرة من القرص دون تخزين مؤقت
  • منصة مستقلة: يمكن أن تعمل على أي نظام تشغيل

تصريح

تقوم فئة FileInputStream بتوسيع نطاق تيار الإدخال class مما يعني أنه يرث طرقًا لقراءة بيانات البايت الأولية من الملفات.

يقوم FileInputStream من الفئة العامة بتوسيع InputStream

مثال: فئة FileInputStream لقراءة البيانات من الملف.

Java
   import     java.io.*  ;   public     class   Geeks  {          public     static     void     main  (  String  []     args  ){          // Use try-with-resources to automatically close the      // stream      try     (  FileInputStream     fi      =     new     FileInputStream  (  'file1.txt'  ))     {      // Display file channel information      System  .  out  .  println  (  'Channel: '      +     fi  .  getChannel  ());      // Display file descriptor      System  .  out  .  println  (  'File Descriptor: '      +     fi  .  getFD  ());      // Show available bytes in the stream      System  .  out  .  println  (  'Number of remaining bytes: '      +     fi  .  available  ());      // Skip first few bytes      fi  .  skip  (  4  );      System  .  out  .  println  (  'File Contents:'  );      // Read and print file content      int     ch  ;      while     ((  ch     =     fi  .  read  ())     !=     -  1  )     {      System  .  out  .  print  ((  char  )  ch  );      }      }      catch     (  FileNotFoundException     e  )     {      System  .  out  .  println  (      'File not found: Ensure 'file1.txt' exists in the working directory.'  );      }      catch     (  IOException     e  )     {      System  .  out  .  println  (      'An error occurred while reading the file: '      +     e  .  getMessage  ());      }      }   }   

الإخراج:  

لقطة الشاشةالإخراج

بناة فئة FileInputStream

1. FileInputStream (اسم السلسلة)

إنشاء دفق ملف إدخال للقراءة من ملف بالاسم المحدد. 

FileInputStream fi = new FileInputStream('example.txt');

2. FileInputStream (ملف ملف)

ينشئ دفق ملف إدخال للقراءة من كائن الملف المحدد. 

الملف f = ملف جديد('example.txt');
FileInputStream fi = new FileInputStream(f);

3. FileInputStream (FileDescriptor fdobj)

إنشاء دفق ملف إدخال للقراءة من واصف الملف المحدد. 

FileDescriptor fd = FileDescriptor.in;
FileInputStream fi = new FileInputStream(fd); 

قم بإنشاء ملف باسم file.txt في دليل المشروع الخاص بك بالمحتوى التالي:

هذا هو الكود الأول الخاص بي
هذا هو الكود الثاني الخاص بي

Java
   import     java.io.*  ;   public     class   Geeks     {      public     static     void     main  (  String  []     args  )      {      // Use try-with-resources to automatically close the stream      try     (  FileInputStream     fi      =     new     FileInputStream  (  'file1.txt'  ))     {      // Display file channel information      System  .  out  .  println  (  'Channel: '      +     fi  .  getChannel  ());      // Display file descriptor      System  .  out  .  println  (  'File Descriptor: '      +     fi  .  getFD  ());      // Illustrating available method      System  .  out  .  println  (  'Number of remaining bytes: '      +     fi  .  available  ());      // Illustrating skip() method      fi  .  skip  (  4  );      System  .  out  .  println  (  'File Contents:'  );      // Reading characters from FileInputStream      int     ch  ;      while     ((  ch     =     fi  .  read  ())     !=     -  1  )     {      System  .  out  .  print  ((  char  )  ch  );      }      }      catch     (  FileNotFoundException     e  )     {      System  .  out  .  println  (      'File not found: Ensure 'file1.txt' exists in the working directory.'  );      }      catch     (  IOException     e  )     {      System  .  out  .  println  (      'An error occurred while reading the file: '      +     e  .  getMessage  ());      }      }   }   

الإخراج:  

الإخراجالإخراج

طرق جافا فئة FileInputStream

طُرق  تم تنفيذ الإجراء 
متاح() يُرجع تقديرًا لعدد البايتات المتبقية التي يمكن قراءتها (أو تخطيها) من دفق الإدخال هذا.
يغلق() يغلق دفق إدخال الملف هذا ويحرر أي موارد نظام مرتبطة بالدفق.
وضع اللمسات النهائية () يضمن أن يتم استدعاء أسلوب الإغلاق لدفق إدخال الملف هذا عندما لا يكون هناك المزيد من المراجع إليه. 
getChannel() إرجاع كائن FileChannel الفريد المرتبط بدفق إدخال الملف هذا. 
getFD() إرجاع كائن FileDescriptor الذي يمثل الاتصال بالملف الفعلي في نظام الملفات الذي يستخدمه FileInputStream.
يقرأ() يقرأ بايت من البيانات من دفق الإدخال هذا
قراءة (بايت [] ب) يقرأ ما يصل إلى b.length بايت من البيانات من دفق الإدخال هذا إلى مصفوفة من البايتات. 
قراءة (بايت [] ب int off int len) يقرأ ما يصل إلى وحدات بايت من البيانات من دفق الإدخال هذا إلى مجموعة من البايتات.
يتخطى() يتخطى ويتجاهل n بايت من البيانات من دفق الإدخال
إنشاء اختبار