Clasa Java FileInputStream

Clasa Java FileInputStream

Clasa FileInputStream în Java este folosită pentru a citi datele dintr-un fișier sub formă de octeți. Este ideal pentru citirea datelor binare, cum ar fi imagini sau fișiere audio. Pentru citirea fișierelor text este mai bine să le utilizați FileReader.

  • Acces direct: Citește direct conținutul fișierului de pe disc fără tamponare
  • Independent de platformă: Poate funcționa pe orice sistem de operare

Declaraţie

Clasa FileInputStream extinde InputStream clasa, ceea ce înseamnă că moștenește metode de citire a datelor brute de octeți din fișiere.

clasa publică FileInputStream extinde InputStream

Exemplu: Clasa FileInputStream pentru a citi datele din fișier.

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

Ieșire:  

Captură de ecranIeșire

Constructorii de Clasa FileInputStream

1. FileInputStream (nume șir)

Creează un flux de fișier de intrare pentru a citi dintr-un fișier cu numele specificat. 

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

2. FileInputStream(Fișier fișier)

Creează un flux de fișier de intrare pentru a citi din obiectul Fișier specificat. 

Fișier f = fișier nou('example.txt');
FileInputStream fi = nou FileInputStream(f);

3. FileInputStream(FileDescriptor fdobj)

Creează un flux de fișier de intrare pentru a citi din descriptorul de fișier specificat. 

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

Creați un fișier numit file.txt în directorul de proiect cu următorul conținut:

acesta este primul meu cod
acesta este al doilea cod al meu

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

Ieșire:  

IeșireIeșire

Metode Java Clasa FileInputStream

Metode  Acțiune efectuată 
disponibil() Returnează o estimare a numărului de octeți rămași care pot fi citiți (sau săriți peste) din acest flux de intrare.
aproape() Închide acest flux de intrare al fișierului și eliberează orice resurse de sistem asociate fluxului.
finaliza () Se asigură că metoda de închidere a acestui flux de introducere a fișierului este apelată atunci când nu mai există referințe la acesta. 
getChannel() Returnează obiectul unic FileChannel asociat cu acest flux de intrare de fișier. 
getFD() Returnează obiectul FileDescriptor care reprezintă conexiunea la fișierul real din sistemul de fișiere utilizat de acest FileInputStream.
citire() Citește un octet de date din acest flux de intrare
citit(octet[] b) Citește până la b.length octeți de date din acest flux de intrare într-o matrice de octeți. 
read(byte[] b int off int len) Citește până la len octeți de date din acest flux de intrare într-o matrice de octeți.
skip() Omite și elimină n octeți de date din fluxul de intrare
Creați un test