„Java“ „FileInputStream“ klasė naudojama duomenims iš failo nuskaityti baitų pavidalu. Tai idealiai tinka dvejetainiams duomenims, pvz., vaizdams ar garso failams, skaityti. Tekstiniams failams skaityti geriau naudoti Failų skaitytuvas.
- Tiesioginė prieiga: Jis tiesiogiai nuskaito failo turinį iš disko be buferio
- Nepriklausoma nuo platformos: Jis gali veikti bet kurioje operacinėje sistemoje
Deklaracija
„FileInputStream“ klasė išplečia InputStream klasę, o tai reiškia, kad ji paveldi neapdorotų baitų duomenų nuskaitymo iš failų metodus.
viešoji klasė FileInputStream išplečia InputStream
Pavyzdys: „FileInputStream“ klasė, skirta nuskaityti duomenis iš failo.
Javaimport 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()); } } }
Išvestis:
IšvestisKonstruktoriai „FileInputStream“ klasė
1. FileInputStream (eilutės pavadinimas)
Sukuria įvesties failo srautą, kad būtų galima skaityti iš failo nurodytu pavadinimu.
FileInputStream fi = new FileInputStream('example.txt');
2. FileInputStream (failo failas)
Sukuria įvesties failo srautą, skirtą skaityti iš nurodyto failo objekto.
Failas f = naujas Failas('example.txt');
FileInputStream fi = naujas FileInputStream(f);
3. FileInputStream (FileDescriptor fdobj)
Sukuria įvesties failo srautą, kad būtų galima skaityti iš nurodyto failo deskriptoriaus.
FileDescriptor fd = FileDescriptor.in;
FileInputStream fi = naujas FileInputStream(fd);
Sukurkite failą pavadinimu file.txt savo projekto kataloge su tokiu turiniu:
Javatai mano pirmas kodas
tai mano antras kodas
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()); } } }
Išvestis:
IšvestisJava metodai „FileInputStream“ klasė
| Metodai | Veiksmas atliktas |
|---|---|
| prieinama () | Pateikia apytikrį likusių baitų, kuriuos galima nuskaityti (arba praleisti) iš šio įvesties srauto, skaičių. |
| uždaryti () | Uždaro šį failo įvesties srautą ir išleidžia visus su srautu susijusius sistemos išteklius. |
| užbaigti () | Užtikrina, kad šio failo įvesties srauto uždarymo metodas būtų iškviestas, kai į jį nebėra nuorodų. |
| getChannel() | Grąžina unikalų „FileChannel“ objektą, susietą su šiuo failo įvesties srautu. |
| getFD() | Grąžina objektą „FileDescriptor“, nurodantį ryšį su tikruoju failu failų sistemoje, kurią naudoja šis „FileInputStream“. |
| skaityti () | Nuskaito baitą duomenų iš šio įvesties srauto |
| skaityti (baitas[] b) | Nuskaito iki b.length baitų duomenų iš šio įvesties srauto į baitų masyvą. |
| skaityti (baitas[] b int off int len) | Nuskaito iki len baitų duomenų iš šio įvesties srauto į baitų masyvą. |
| praleisti () | Praleidžia ir atmeta n baitų duomenų iš įvesties srauto |