Kā darbojas Java InputStream

Ka Darbojas Java Inputstream



Java ļauj izstrādātājiem strādāt ar failiem. Šādā gadījumā “ InputStream ” stājas spēkā klase, kas palīdz nolasīt norādītā faila saturu, kā arī analizēt ietvertos baitus. Tā rezultātā tiek atrisinātas atmiņas problēmas, kā arī efektīvi tiek atgriezts selektīvs faila saturs atbilstoši prasībām.

Šajā pārskatā tiks detalizēti aprakstīta “InputStream” darbība Java.







Kā darbojas Java InputStream?

“InputStream” klase java.io ” pakotne atbilst abstraktai virsklasei, kas atgriež ievades straumi, kas sastāv no baitiem pret norādīto failu.



InputStream apakšklases

Lai lietotu “InputStream” funkcionalitāti, var izmantot šādas tās apakšklases:



    • FileInputStream
    • ObjectInputStream
    • ByteArrayInputStream

Tas ir tāds, ka šīs apakšklases paplašina “InputStream” klasi.





InputStream metodes

Klase “InputStream” satur dažādas metodes, kuras izmanto tās apakšklases. Tālāk ir minētas dažas no visbiežāk izmantotajām metodēm:

Metodes Funkcionalitāte
lasīt () Tas nolasa datu baitu no ievades straumes.



lasīt (baitu [] masīvs) Tas arī nolasa baitus no straumes un saglabā tos mērķa masīvā.

izlaist () Šī metode izlaiž/izlaiž noteiktu baitu skaitu ievades straumē.

pieejams () Tas dod ietvertos baitus ievades straumē.
atiestatīt () Tas nodrošina piekļuvi straumes punktam, kurā tika iestatīta atzīme.

atzīme () Šī metode atzīmē vietu straumē, līdz kurai dati ir nolasīti.

atzīmēts atbalstīts() Tas analizē, vai straumē tiek atbalstītas/saderīgas metodes “mark()” un “reset()”.


Pirms došanās uz piemēru, importējiet šādas pakotnes, lai strādātu ar “InputStream” un tās apakšklasi:

importēt java.io.FileInputStream;
importēt java.io.InputStream;


Piemērs: InputStream darbība Java

Šis piemērs ilustrē “InputStream” darbību, nolasot faila saturu, izmantojot “InputStream” metodes:

publiskās klases ievades plūsma {
publisks statisks tukšums galvenais ( Stīgu args [ ] ) {
baits [ ] givenarray = jauns baits [ piecdesmit ] ;
mēģināt {
InputStream readData = jauns FileInputStream ( 'lasītfails.txt' ) ;
System.out.println ( 'Baiti failā ->' + readData.available ( ) ) ;
lasītDati.lasīt ( dots masīvs ) ;
System.out.println ( 'Lasīt faila datus:' ) ;
Virkne saturdata = jauna virkne ( dots masīvs ) ;
System.out.println ( satur datus ) ;
readData.close ( ) ;
}
noķert ( Izņēmums, izņemot ) {
izņemot.getStackTrace ( ) ;
}
} }


Saskaņā ar iepriekš minētajām koda rindām veiciet tālāk norādītās darbības.

    • Vispirms izveidojiet “baitu” masīvu, kurā var būt ne vairāk kā “ piecdesmit ” baitu vērtības lasāmajā failā.
    • Nākamajā darbībā izveidojiet ' InputStream ” izmantojot “FileInputStream” un atgriezt pieejamos baitus norādītajā failā, izmantojot saistīto “ pieejams () ” metode.
    • Pēc tam nolasiet baitus no ievades straumes, izmantojot “ lasīt () ” metode.
    • Tagad konvertējiet baitu masīvu par virkni un parādiet faila saturu.
    • Visbeidzot aizveriet lasīto failu, izmantojot saistīto ' aizvērt () ” metode.

Izvade


Šajā iznākumā var norādīt, ka faila baitu skaits, t.i., satura uzkrātā vieta, tiek atgriezta saskaņā ar maksimālo diapazonu baitu masīvā, t.i., “50”. Arī faila saturs tiek atbilstoši atgriezts.

Faila saturs


Lai iegūtu pārskatu par “ izlaist () ' un ' atiestatīt () ” metodes, apsveriet šādu demonstrāciju:


Šajā ilustrācijā metode “skip()” izlaiž norādīto baitu skaitu, t.i., “ 5 -> Java ” no faila satura no paša sākuma. Tomēr metode “reset()” atiestata straumi.

Secinājums

' InputStream 'klase' java.io ” pakotne ir abstrakta virsklase, kas atbilst baitu ievades straumei, ko izmanto faila datu nolasīšanai. Šī klase ietver dažādas metodes, kas palīdz efektīvi nolasīt faila metodi atbilstoši prasībām. Šis emuārs demonstrēja Java “InputStream” mērķi un darbību.