Clase Java FileInputStream

Clase Java FileInputStream

La clase FileInputStream en Java se utiliza para leer datos de un archivo en forma de bytes. Es ideal para leer datos binarios como imágenes o archivos de audio. Para leer archivos de texto es mejor usar Lector de archivos.

  • Acceso directo: Lee directamente el contenido del archivo desde el disco sin almacenamiento en búfer.
  • Independiente de plataforma: Puede funcionar en cualquier sistema operativo.

Declaración

La clase FileInputStream extiende la Flujo de entrada clase, lo que significa que hereda métodos para leer datos de bytes sin procesar de archivos.

la clase pública FileInputStream extiende InputStream

Ejemplo: Clase FileInputStream para leer datos del archivo.

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

Producción:  

Captura de pantallaProducción

Constructores de Clase FileInputStream

1. FileInputStream (nombre de cadena)

Crea una secuencia de archivo de entrada para leer desde un archivo con el nombre especificado. 

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

2. FileInputStream (archivo de archivo)

Crea una secuencia de archivo de entrada para leer desde el objeto Archivo especificado. 

Archivo f = nuevo Archivo('ejemplo.txt');
FileInputStream fi = nuevo FileInputStream(f);

3. FileInputStream (FileDescriptor fdobj)

Crea una secuencia de archivo de entrada para leer desde el descriptor de archivo especificado. 

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

Cree un archivo llamado file.txt en el directorio de su proyecto con el siguiente contenido:

este es mi primer codigo
este es mi segundo codigo

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

Producción:  

ProducciónProducción

Métodos de Java Clase FileInputStream

Métodos  Acción realizada 
disponible() Devuelve una estimación del número de bytes restantes que se pueden leer (u omitir) de este flujo de entrada.
cerca() Cierra este flujo de entrada de archivos y libera todos los recursos del sistema asociados con el flujo.
finalizar() Garantiza que se llame al método de cierre de este flujo de entrada de archivo cuando no haya más referencias a él. 
obtenerCanal() Devuelve el objeto FileChannel único asociado con este flujo de entrada de archivo. 
obtenerFD() Devuelve el objeto FileDescriptor que representa la conexión con el archivo real en el sistema de archivos que utiliza este FileInputStream.
leer() Lee un byte de datos de este flujo de entrada
leer(byte[] b) Lee hasta b.length bytes de datos de este flujo de entrada en una matriz de bytes. 
leer(byte[] b int off int len) Lee hasta len bytes de datos de este flujo de entrada en una matriz de bytes.
saltar() Salta y descarta n bytes de datos del flujo de entrada
Crear cuestionario