Vhodni tok datoteke Java v Ubuntu 20.04

Vhodni Tok Datoteke Java V Ubuntu 20 04



»V tem članku bomo razpravljali o različnih načinih branja podatkov iz datotek v niz bajtov z uporabo razreda Java Input Stream. Ta razred predstavlja razvrščeni tok bajtov iz datoteke. V razredu Java Input Stream je več funkcij, ki se pogosto uporabljajo in bodo obravnavane v tem članku, na primer metode read(), available(), skip() in close(). Te metode se uporabljajo za branje datotek z različnimi končnicami, kot so datoteke bin ali txt, in jih je mogoče spremeniti za pridobivanje informacij s katere koli točke v datoteki. V tem članku bomo izvajali te metode v okolju Ubuntu 20.04.

Obstaja veliko več metod razreda File Input Stream, ki so prav tako zelo koristne pri pridobivanju podatkov iz datoteke; nekateri med njimi so int read(byte[] b), ta funkcija bere podatke iz vhodnega toka do dolžine b.length bajtov. Datotečni kanal dobi kanal(): Specifični predmet datotečnega kanala, povezan z vhodnim tokom datoteke, se vrne z njegovo uporabo. Finalize() se uporablja za zagotovitev, da se funkcija close() prikliče, ko ni več sklicevanja na vhodni tok datoteke.«

Primer 01: Branje enega bajta iz besedilne datoteke z uporabo metod read() in close() razreda vhodnega toka

Ta primer uporablja File Input Stream za branje enega znaka in izpis vsebine. Recimo, da imamo datoteko z imenom »file.txt« s spodaj prikazano vsebino:









Recimo, da imamo datoteko z imenom 'file.txt' z zgoraj prikazano vsebino. Poskusimo zdaj prebrati in natisniti prvi znak datoteke.







Najprej moramo uvoziti java.io. Paket File Input Stream za izdelavo vhodnega toka datoteke. Nato bomo ustvarili nov objekt File Input Stream, ki bo povezan z datoteko, določeno (file.txt) v spremenljivki “f”.

V tem primeru bomo uporabili metodo »int read()« razreda Java File Input Stream, ki se uporablja za branje enega bajta iz datoteke in njegovo shranjevanje v spremenljivko »I«. Nato »System.out.print(char(i))« prikaže znak, ki ustreza temu bajtu.



Metoda f.close() zapre datoteko in tok. Po izdelavi in ​​zagonu prej omenjenega skripta bomo dobili naslednji izhod, saj lahko vidimo, da je natisnjena samo začetna črka besedila »L«.

Primer 02: Branje celotne vsebine besedilne datoteke z uporabo metod read() in close() razreda vhodnega toka

V tem primeru bomo brali in prikazovali vso vsebino besedilne datoteke; kot je prikazano spodaj:

Ponovno bomo uvažali java.io. Paket File Input Stream za izdelavo vhodnega toka datoteke.

Najprej bomo prebrali prvi bajt datoteke in prikazali ustrezen znak znotraj zanke while. Zanka while se bo izvajala, dokler ne bo več bajtov, to je konec besedila v datoteki. Vrstica 12 bo prebrala naslednji bajt in zanka se bo nadaljevala do zadnjega bajta datoteke.

Po prevajanju in izvajanju zgornje kode bomo dobili naslednje rezultate. Kot lahko vidimo, je celotno besedilo datoteke 'Lorep Ipsum' prikazano v terminalu.

Primer 03: Določanje števila razpoložljivih bajtov v besedilni datoteki z uporabo metode available() razreda vhodnega toka

V tem primeru bomo uporabili funkcijo »available()« vhodnega toka datoteke za določitev števila obstoječih bajtov v vhodnem toku datoteke.

Najprej smo ustvarili objekt razreda vhodnega toka datoteke z imenom 'a' z naslednjo kodo. V vrstici 5 smo uporabili metodo »available()« za določitev in prikaz skupne količine razpoložljivih bajtov v datoteki. Nato smo od vrstice 6 do vrstice 8 trikrat uporabili funkcijo »read()«. V vrstici 9 smo znova uporabili metodo »available()« za preverjanje in prikaz preostalih bajtov.

Po prevajanju in zagonu kode lahko vidimo, da prva vrstica izhoda prikazuje skupno število razpoložljivih bajtov v datoteki. Naslednja vrstica prikazuje število bajtov, ki so na voljo na koncu kode, kar je 3 manj od bajtov, ki so na voljo na začetku. To je zato, ker smo v naši kodi trikrat uporabili metodo branja.

Primer 04: Preskakovanje bajtov besedilne datoteke za branje podatkov z določene točke z uporabo metode skip() razreda vhodnega toka

V tem primeru bomo uporabili metodo »skip(x)« vhodnega toka datoteke, ki se uporablja za ignoriranje in neupoštevanje danega števila bajtov podatkov iz vhodnega toka.

V spodnji kodi smo najprej ustvarili vhodni tok datoteke in ga shranili v spremenljivko 'a'. Nato smo uporabili metodo 'a.skip(5)', ki bo preskočila prvih 5 bajtov datoteke. Nato smo natisnili preostale znake datoteke z uporabo metode »read()« znotraj zanke while. Nazadnje smo zaprli vhodni tok datoteke z metodo »close()«.

Spodaj je posnetek zaslona terminala po prevajanju in izvajanju kode. Kot lahko vidimo, je prikazan samo »Ipsum«, saj smo preskočili prvih 5 bajtov z uporabo metode »skip()«.

Zaključek

V tem članku smo razpravljali o uporabi razreda File Input Stream in njegovih različnih metodah; read(), available(), skip() in close(). Te metode smo uporabili za branje prvega elementa datoteke z uporabo metod read() in close(). Nato preberemo celotno datoteko z iterativnim pristopom in uporabo istih metod. Nato smo uporabili metodo available() za določitev števila bajtov, ki so prisotni na začetku in zaključku datoteke. Po tem smo uporabili metodo skip(), da smo preskočili več bajtov, preden smo prebrali datoteko, kar nam je omogočilo, da smo dobili določene podatke, ki smo jih potrebovali.