Клас Java FileInputStream

Клас Java FileInputStream

Клас FileInputStream у Java використовується для читання даних із файлу у формі байтів. Він ідеально підходить для читання двійкових даних, таких як зображення чи аудіофайли. Для читання текстових файлів краще використовувати FileReader.

  • Прямий доступ: Він безпосередньо зчитує вміст файлу з диска без буферизації
  • Незалежно від платформи: Він може працювати на будь-якій операційній системі

Декларація

Клас FileInputStream розширює InputStream клас, що означає, що він успадковує методи для читання необроблених байтових даних із файлів.

відкритий клас 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 = новий FileInputStream('example.txt');

2. FileInputStream(Файловий файл)

Створює вхідний файловий потік для читання з указаного об’єкта File. 

Файл f = новий файл ('example.txt');
FileInputStream fi = новий FileInputStream(f);

3. FileInputStream(FileDescriptor fdobj)

Створює вхідний файловий потік для читання з указаного файлового дескриптора. 

FileDescriptor fd = FileDescriptor.in;
FileInputStream fi = новий 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  ());      }      }   }   

Вихід:  

ВихідВихід

Методи Java Клас FileInputStream

методи  Дія виконана 
доступний() Повертає оцінку кількості байтів, що залишилися, які можна прочитати (або пропустити) із цього вхідного потоку.
закрити() Закриває цей вхідний потік файлу та звільняє всі системні ресурси, пов’язані з потоком.
завершити() Забезпечує виклик методу close цього вхідного потоку файлу, коли на нього більше немає посилань. 
getChannel() Повертає унікальний об’єкт FileChannel, пов’язаний із цим вхідним потоком файлу. 
getFD() Повертає об’єкт FileDescriptor, який представляє з’єднання з фактичним файлом у файловій системі, яка використовується цим FileInputStream.
читати() Зчитує байт даних із цього вхідного потоку
read(byte[] b) Зчитує до b.length байтів даних із цього вхідного потоку в масив байтів. 
read(byte[] b int off int len) Зчитує до len байт даних із цього вхідного потоку в масив байтів.
пропустити() Пропускає та відкидає n байт даних із вхідного потоку
Створіть вікторину