Computer, Zokuhlela
Java: InputStream. input imifula
Java, ezifana iilwimi ezininzi namhlanje udweliso, ixhasa ukuphunyezwa imijelo yegalelo data. In Java InputStream na iklasi isiseko emifuleni byte. Esi sigaba abstract, oko kukuthi, ngexesha lenkqubo asikwazi ukwenza umzekelo we kuyo. Noko ke, iphakheji io unesethi kweeklasi kwabawahluthayo nokwandisa ukusebenza InputStream. Ukuze usebenzise le eklasini ikhowudi yakho, kufuneka amazwe ukusuka package java.io.InputStream. Okulandelayo, siqwalasela ukusebenza ezisisiseko eyinikezayo kwihlabathi kwevuliweyo negqityiweyo udidi InputStream, kwaye ezi ndidi eziziintloko ukusiqhuba.
iindlela class InputStream
Ngaphambi kokuqhubeka isifundo eneenkcukacha kwiindlela kwiklasi InputStream, kufuneka kuchazwe ukuba liphumeza Closeable kunye AutoCloseable interfaces. Interface Closeable isixelela ukuba ukugqitywa komsebenzi kunye nokungena kufuneka kunyanzeleka ukuba zivalwe. Oku kwenziwa ngokusebenzisa close indlela (). Ekubeni inkoliso iindlela kwiklasi InputStream xa yemposiso kudala uhlobo ngaphandle IOException, yonke imisebenzi efunekayo ukuze aqhube ibhloko itrayi kunye close indlela () ekugqibeleni wenze iyunithi ukuze kubhaliwe zinokubakhubekisa kuxhomekeke kwiziphumo yokusebenza ukuzama umzimba.
AutoCloseable ujongano kunciphisa kakhulu imali yesondlo ikhowudi, ekubeni ivumela close () umsebenzi indlela ngokuzenzekelayo yaye musa ukongeza kwi ikhowudi yakho ekugqibeleni ukuvala. Ukuba usebenzisa uguqulelo wesixhenxe okanye kamva lwe Java, i InputStream nga zibekwe kokubizwa-itrayi ngezibonelelo kuyo yonke imisebenzi ukuvala flow kuthatha ngaphezu.
Qwalasela iindlela ezisisiseko eklasini InputStream:
- int ekhoyo () - ubuyisela inani sifunda bytes;
- int ukufunda () - ithatha byte yangoku lwemvelaphi kwaye ibuyisela nokumelwa elipheleleyo; ukuba onke bytes ukufunda, -1 phinda;
- int ufunde (byte [] buffer) - Ukufunda bytes kwi ekhoyo uthe njengesikhuseli ngohlobo uhlobo byte uluhlu (inani le bytes ezinikeziweyo Masifunde eziphahle elilingana ubungakanani ukhankanyiwe kwaye ibuyisela inani le bytes ezinikeziweyo okufundwayo baphumelela kwaye ukuba zonke bytes ezikhoyo ukufunda, ibuyisela -1);
- int ufunde (byte buffer [], int ukulinganisa, int inani le bytes ezinikeziweyo) - ukucima kombane le ndlela odlulileyo, wenza okufanayo, kodwa i "ukulinganisa" isikhundla elicaziweyo ufunda kangangoko ibekwe kwi "inani le bytes ';
- ngokuqakatha elide (elide byte count) - inani tsiba kubeka bytes kwaye ibuyisela inani ephosiweyo.
InputStream kuphunyezwa kwiiklasi ezininzi yenzelwe ukusebenza kunye imithombo eyahlukeneyo kunye neentlobo ze data. Ingezantsi ibonisa umthi ilifa.
yokufunda iifayile
Byte stream ukufunda data kwifayile kuphunyezwa iklasi FileInputStream. Ukuvula ifayile ye bytes, ngokwaneleyo ukudala umzekelo we eklasini ukufunda, ngokugqithisela umbangi wawo igama lefayile ye, classes. Ukuba ifayile idluliselwa kwigama ayikho, oko ndiya kugungxula umnyinyiva lohlobo FileNotFoundException.
Kwimeko uphumelele vula ifayile, umsebenzi nabo ikhutshwa phandle usebenzisa iindlela ezichazwe ngasentla, njengoko ezihlangwini FileInputStream InputStream.
Ukufunda iintlobo data emidala
Kulo mzekelo ungentla ichaza umsebenzi kunye neenqobo byte, leyo ukuchazwa neesimboli. Kodwa kuthekani ukuba ufuna ukufunda i elipheleleyo, iqhezu okanye ixabiso Boolean? Ukwenza oku Java InputStream ngqo u DataInputStream eklasini. Esi sigaba ngumsongi ngenxa InputStream, into egxothiweyo kulo indalo njenge mpikiswano kokwakha. Olu hlobo ngemisonto ufunda idata ngohlobo yokubini.
DataInputStream iyasebenza i DataInput isinxulumanisi kunye neendlela zalo ngokufunda iintlobo data kwakudala. Ezantsi apha kukho uluhlu lwezi ndlela.
amagama Indlela athethe ngokwabo - ngamnye kubo ilungiselelwe ukuba bafunde uhlobo data ethile.
Yemphahla input stream
Yemphahla stream ukufunda data liphunyezwa iklasi BufferedInputStream kwi Java. InputStream isongiwe yile iklasi. Le iklasi uncedisana umsinga luphela, ukuvumela ukuba ufunde ngexesha elinye akukho namnye kodwa bytes eziliqela. Oku kwenza kube lula kakhulu ngcono ukusebenza msebenzi. BufferedInputStream okuvela InputStream yinto ngqo kwaye ngaloo ndlela ifa zonke iindlela zikhankanywe ngasentla.
Esi sigaba abakhi ezimbini:
- BufferedInputStream (input InputStream stream);
- BufferedInputStream (InputStream igalelo umlambo, int uxhaso ubukhulu)
Nomsayino abayili ziyalandeleka ukuba yokuqala icwangcisa ubungakanani uxhaso olungagqibekanga, yaye owesibini kuyenzeka ukuba imiswe ngesandla.
isiphelo
Siye kwakhona ukuqaphela ezisisiseko InputStream. Ukuba ufuna ukuguqula le bytes ezifikileyo umtya kwi Java InputStream ukuya Umtya (), ngelishwa, akukho igcwele kakhulu, ngoko ke kuya kufuneka ukuba basebenzise izixhobo ezikhethekileyo, umzekelo, IOUtils evela kwithala Apache Commons.
Similar articles
Trending Now