logo

Java FileInputStream klasa

Klasa FileInputStream u Javi koristi se za čitanje podataka iz datoteke u obliku bajtova. Idealan je za čitanje binarnih podataka kao što su slike ili audio datoteke. Za čitanje tekstualnih datoteka bolje je koristiti FileReader.

  • Izravan pristup: Izravno čita sadržaj datoteke s diska bez spremanja u međuspremnik
  • Neovisno o platformi: Može raditi na bilo kojem operativnom sustavu

deklaracija

Klasa FileInputStream proširuje InputStream klasa što znači da nasljeđuje metode za čitanje neobrađenih bajt podataka iz datoteka.

javna klasa FileInputStream proširuje InputStream



Primjer: Klasa FileInputStream za čitanje podataka iz datoteke.

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

Izlaz:  

Snimka zaslona' title=Izlaz

Konstruktori od Klasa FileInputStream

1. FileInputStream(naziv niza)

Stvara ulazni tok datoteke za čitanje iz datoteke s navedenim nazivom. 

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

kakica

2. FileInputStream(Datoteka datoteke)

Stvara ulazni tok datoteke za čitanje iz navedenog objekta File. 

File f = new File('example.txt');
FileInputStream fi = novi FileInputStream(f);

3. FileInputStream(FileDescriptor fdobj)

Stvara ulazni tok datoteke za čitanje iz navedenog deskriptora datoteke. 

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

python sort dictionary

Napravite datoteku pod nazivom file.txt u svom direktoriju projekta sa sljedećim sadržajem:

ovo je moj prvi kod
ovo je moj drugi kod

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

Izlaz:  

Izlaz' loading='lazy' title=Izlaz

Metode Jave Klasa FileInputStream

Metode Radnja izvršena 
dostupno() Vraća procjenu broja preostalih bajtova koji se mogu pročitati (ili preskočiti) iz ovog ulaznog toka.
zatvoriti() Zatvara ovaj ulazni tok datoteke i oslobađa sve sistemske resurse povezane s tokom.
finalizirati () Osigurava da se metoda zatvaranja ovog ulaznog toka datoteke poziva kada više nema referenci na njega. 
getChannel() Vraća jedinstveni objekt FileChannel povezan s ovim ulaznim tokom datoteke. 
getFD() Vraća objekt FileDescriptor koji predstavlja vezu sa stvarnom datotekom u datotečnom sustavu koji koristi ovaj FileInputStream.
čitaj() Čita bajt podataka iz ovog ulaznog toka
pročitaj (bajt[] b)Čita do b.length bajtova podataka iz ovog ulaznog toka u niz bajtova. 
read(byte[] b int off int len)Čita do len bajtova podataka iz ovog ulaznog toka u polje bajtova.
preskočiti() Preskače i odbacuje n bajtova podataka iz ulaznog toka
Napravi kviz