Java FileInputStream klasse
FileInputStream-klassen i Java bruges til at læse data fra en fil i form af bytes. Den er ideel til at læse binære data såsom billeder eller lydfiler. Til læsning af tekstfiler er det bedre at bruge Fillæser.
- Direkte adgang: Den læser filindholdet direkte fra disken uden buffering
- Platformuafhængig: Det kan fungere på ethvert operativsystem
Erklæring
FileInputStream-klassen udvider InputStream klasse, hvilket betyder, at den arver metoder til at læse rå bytedata fra filer.
public class FileInputStream udvider InputStream
Eksempel: FileInputStream-klasse til at læse data fra fil.
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 ()); } } }
Produktion:
Produktion Konstruktører af FileInputStream klasse
1. FileInputStream(strengnavn)
Opretter en inputfilstrøm til at læse fra en fil med det angivne navn.
FileInputStream fi = new FileInputStream('example.txt');
2. FileInputStream(Filfil)
Opretter en inputfilstrøm til at læse fra det angivne filobjekt.
Fil f = ny Fil('eksempel.txt');
FileInputStream fi = ny FileInputStream(f);
3. FileInputStream(FileDescriptor fdobj)
Opretter en inputfilstrøm til at læse fra den angivne filbeskrivelse.
FileDescriptor fd = FileDescriptor.in;
FileInputStream fi = ny FileInputStream(fd);
Opret en fil med navnet file.txt i din projektmappe med følgende indhold:
Javadette er min første kode
dette er min anden kode
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 ()); } } }
Produktion:
Produktion Java-metoder FileInputStream klasse
| Metoder | Handling udført |
|---|---|
| tilgængelig() | Returnerer et skøn over antallet af resterende bytes, der kan læses (eller springes over) fra denne inputstrøm. |
| tæt() | Lukker denne filinputstrøm og frigiver alle systemressourcer, der er knyttet til strømmen. |
| afslutte() | Sikrer, at lukkemetoden for denne filinputstrøm kaldes, når der ikke er flere referencer til den. |
| getChannel() | Returnerer det unikke FileChannel-objekt, der er knyttet til denne filinputstrøm. |
| getFD() | Returnerer FileDescriptor-objektet, der repræsenterer forbindelsen til den faktiske fil i filsystemet, der bruges af denne FileInputStream. |
| læse() | Læser en byte af data fra denne inputstrøm |
| læs(byte[] b) | Læser op til b.length bytes af data fra denne inputstrøm til en række bytes. |
| read(byte[] b int off int len) | Læser op til udlån bytes af data fra denne inputstrøm til en række bytes. |
| springe() | Springer over og kasserer n bytes data fra inputstrømmen |