Ulazni tok Java datoteke u Ubuntu 20.04

Ulazni Tok Java Datoteke U Ubuntu 20 04



“U ovom ćemo članku raspravljati o različitim načinima čitanja podataka iz datoteka u niz bajtova pomoću klase Java Input Stream. Ova klasa predstavlja sortirani tok bajtova iz datoteke. Postoji više funkcija u klasi Java Input Stream koje se često koriste i o kojima će se raspravljati u ovom članku, poput metoda read(), available(), skip() i close(). Ove se metode koriste za čitanje datoteka različitih ekstenzija kao što su bin ili txt datoteke i mogu se mijenjati za dobivanje informacija s bilo kojeg mjesta u datoteci. U ovom ćemo članku implementirati ove metode u okruženju Ubuntu 20.04.

Postoji mnogo više metoda File Input Stream klase koje su također vrlo korisne u dobivanju podataka iz datoteke; neki od njih su int read(byte[] b), ova funkcija čita podatke iz ulaznog toka do b.length duljine bajtova. Datotečni kanal dobiva kanal(): Specifični File Channel objekt povezan s ulaznim tokom datoteke vraća se pomoću njega. Finalize() se koristi kako bi se osiguralo da se funkcija close() poziva kada više ne postoji referenca na ulazni tok datoteke.”

Primjer 01: Čitanje jednog bajta iz tekstualne datoteke korištenjem metoda read() i close() klase ulaznog toka

Ovaj primjer koristi File Input Stream za čitanje jednog znaka i ispis sadržaja. Pretpostavimo da imamo datoteku pod nazivom 'file.txt' sa sadržajem prikazanim u nastavku:









Pretpostavimo da imamo datoteku pod nazivom 'file.txt' sa sadržajem prikazanim iznad. Pokušajmo sada pročitati i ispisati prvi znak datoteke.







Prvo moramo uvesti java.io. File Input Stream paket za izradu ulaznog toka datoteke. Zatim ćemo stvoriti novi objekt File Input Stream koji će biti povezan s navedenom datotekom (file.txt) u varijabli “f”.

U ovom primjeru koristit ćemo metodu 'int read()' klase Java File Input Stream, koja se koristi za čitanje jednog bajta iz datoteke i njegovo spremanje u varijablu 'I'. Zatim, 'System.out.print(char(i))' prikazuje znak koji odgovara tom bajtu.



Metoda f.close() zatvara datoteku i tok. Dobit ćemo sljedeći izlaz nakon izgradnje i pokretanja gore navedene skripte, jer možemo vidjeti da je ispisano samo početno slovo teksta 'L'.

Primjer 02: Čitanje cijelog sadržaja tekstualne datoteke korištenjem metoda read() i close() klase ulaznog toka

U ovom primjeru čitat ćemo i prikazivati ​​sav sadržaj tekstualne datoteke; kako je prikazano dolje:

Još jednom ćemo uvoziti java.io. File Input Stream paket za izradu ulaznog toka datoteke.

Prvo ćemo pročitati prvi bajt datoteke i prikazati odgovarajući znak unutar while petlje. While petlja će se izvoditi sve dok ne ostane nijedan bajt, odnosno dok ne završi tekst u datoteci. Linija 12 će pročitati sljedeći bajt, a petlja će se nastaviti do posljednjeg bajta datoteke.

Nakon prevođenja i izvršavanja gornjeg koda, dobit ćemo sljedeće rezultate. Kao što vidimo, cijeli tekst datoteke “Lorep Ipsum” prikazan je na terminalu.

Primjer 03: Određivanje broja dostupnih bajtova u tekstualnoj datoteci korištenjem metode available() klase ulaznog toka

U ovom primjeru koristit ćemo se funkcijom 'available()' File Input Stream-a za određivanje broja postojećih bajtova u ulaznom toku datoteke.

Prvo smo generirali objekt klase ulaznog toka datoteke pod nazivom 'a' sa sljedećim kodom. U retku 5 upotrijebili smo metodu 'available()' za određivanje i prikaz ukupne količine dostupnih bajtova u datoteci. Zatim smo od retka 6 do retka 8 triput koristili funkciju 'read()'. Sada smo u retku 9 ponovno koristili metodu 'available()' za provjeru i prikaz preostalih bajtova.

Nakon prevođenja i pokretanja koda, možemo vidjeti da prvi redak izlaza prikazuje ukupan broj dostupnih bajtova u datoteci. Sljedeći red prikazuje broj bajtova dostupnih na kraju koda, što je 3 manje od bajtova dostupnih na početku. To je zato što smo metodu čitanja koristili tri puta u našem kodu.

Primjer 04: Preskakanje bajtova tekstualne datoteke za čitanje podataka s određene točke korištenjem metode skip() klase ulaznog toka

U ovom primjeru koristit ćemo metodu 'skip(x)' ulaznog toka datoteke, koja se koristi za ignoriranje i zanemarivanje zadanog broja bajtova podataka iz ulaznog toka.

U donjem kodu, prvo smo kreirali ulazni tok datoteke i pohranili ga u varijablu 'a'. Zatim smo upotrijebili metodu 'a.skip(5)', koja će preskočiti prvih 5 bajtova datoteke. Zatim smo ispisali preostale znakove datoteke pomoću metode 'read()' unutar while petlje. Konačno, zatvorili smo ulazni tok datoteke metodom 'close()'.

Ispod je snimak zaslona terminala nakon kompajliranja i pokretanja koda. Kao što vidimo, prikazuje se samo 'Ipsum' jer smo preskočili prvih 5 bajtova pomoću metode 'skip()'.

Zaključak

U ovom smo članku raspravljali o upotrebi klase File Input Stream i njezinim različitim metodama; read(), available(), skip() i close(). Koristili smo ove metode za čitanje prvog elementa datoteke pomoću metoda read() i close(). Zatim čitamo cijelu datoteku kroz iterativni pristup i korištenjem istih metoda. Zatim smo upotrijebili raspoloživu() metodu za određivanje broja bajtova prisutnih na početku i završetku datoteke. Nakon toga smo upotrijebili metodu skip() za preskakanje nekoliko bajtova prije čitanja datoteke, što nam je omogućilo da dobijemo specifične podatke koji su nam potrebni.