Trieda Java FileInputStream

Trieda Java FileInputStream

Trieda FileInputStream v jazyku Java sa používa na čítanie údajov zo súboru vo forme bajtov. Je ideálny na čítanie binárnych údajov, ako sú obrázky alebo zvukové súbory. Na čítanie textových súborov je lepšie použiť FileReader.

  • Priamy prístup: Priamo číta obsah súboru z disku bez ukladania do vyrovnávacej pamäte
  • Nezávislé od platformy: Môže pracovať na akomkoľvek operačnom systéme

Vyhlásenie

Trieda FileInputStream rozširuje InputStream trieda, čo znamená, že zdedí metódy na čítanie nespracovaných bajtových údajov zo súborov.

public class FileInputStream rozširuje InputStream

Príklad: Trieda FileInputStream na čítanie údajov zo súboru.

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  ());      }      }   }   

výstup:  

Snímka obrazovkyVýstup

Konštruktéri z Trieda FileInputStream

1. FileInputStream (názov reťazca)

Vytvorí prúd vstupného súboru na čítanie zo súboru so zadaným názvom. 

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

2. FileInputStream (súbor súboru)

Vytvorí prúd vstupného súboru na čítanie zo zadaného objektu File. 

Súbor f = nový Súbor('example.txt');
FileInputStream fi = new FileInputStream(f);

3. FileInputStream(FileDescriptor fdobj)

Vytvorí prúd vstupného súboru na čítanie zo zadaného deskriptora súboru. 

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

Vytvorte súbor s názvom file.txt v adresári projektu s nasledujúcim obsahom:

toto je môj prvý kód
toto je môj druhý kód

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  ());      }      }   }   

výstup:  

VýstupVýstup

Metódy Java Trieda FileInputStream

Metódy  Akcia vykonaná 
k dispozícii() Vráti odhadovaný počet zostávajúcich bajtov, ktoré možno prečítať (alebo preskočiť) z tohto vstupného toku.
zavrieť() Zatvorí tento vstupný prúd súboru a uvoľní všetky systémové prostriedky spojené s prúdom.
finalizovať () Zabezpečuje, aby sa zavolala metóda zatvorenia tohto vstupného toku súboru, keď už naň neexistujú žiadne odkazy. 
getChannel() Vráti jedinečný objekt FileChannel priradený k tomuto vstupnému toku súboru. 
getFD() Vráti objekt FileDescriptor, ktorý predstavuje pripojenie k skutočnému súboru v systéme súborov, ktorý používa tento FileInputStream.
prečítať () Číta bajt údajov z tohto vstupného toku
čítať(bajt[] b) Číta až b.dĺžka bajtov dát z tohto vstupného toku do poľa bajtov. 
read(byte[] b int off int len) Prečíta až len bajtov údajov z tohto vstupného toku do poľa bajtov.
preskočiť () Preskočí a zahodí n bajtov údajov zo vstupného toku
Vytvoriť kvíz