Coimpiutairean, Prògramadh
Java: InputStream. Taic bho sruthan
Java, mar iomadh latha an-diugh phrògraman cànain, taic do chur an gnìomh a-steach dàta sruthan. Ann an Java InputStream tha bonn a 'chlas airson Byte sruthan. Tha an clas seo a tha eas-chruthach, a tha, ann an cùrsa den phrògram, chan urrainn dhuinn a chruthachadh eisimpleir dheth. Ach, io pasgan Tha seata de chlasaichean a shealbhachadh agus a 'leudachadh na feuman InputStream. Gus seo a chleachdadh ann an clas an còd agad, feumaidh e bhith air a thoirt a-steach bho java.io.InputStream pasgan. An ath-, tha sinn a 'beachdachadh air na feartan bunaiteach a' toirt InputStream chlas, agus an prìomh-clasaichean a chur an gnìomh.
InputStream clas dòighean
Mus adhart gu sgrùdadh mionaideach air na dòighean InputStream chlas, bu chòir a bhith air ainmeachadh gu bheil e a 'buileachadh Closeable agus AutoCloseable nall. Interface Closeable ag innse dhuinn gu bheil aig crìoch an obair le sruth feumaidh e an-còmhnaidh a bhith dùinte. Tha seo ga dhèanamh, a 'cleachdadh dòigh dlùth (). Bho chuid as motha de InputStream clas dòighean ann an cùis mearachd gineadh eisgeachd seòrsa IOException, gach obair a tha a dhìth a dhèanamh feuchaibh an loga bacaidh is an dòigh dlùth () mu dheireadh a dhèanamh aonad mar sin a tha e nuair a thuislich an crochadh air toradh obrach a 'feuchainn chorp.
AutoCloseable eadar-aghaidh gu mòr a 'gearradh sìos air an uiread de Còd a' cumail suas, a chionn e a 'leigeil le dlùth () dòigh-obrach fèin-ghluasadach agus chan eil Cuir an còd agad mu dheireadh thall bhacadh. Ma tha thu a 'cleachdadh an t-seachdamh no nas dreach de Java, an InputStream faodar an cur ann mar a theirear Feuch le goireasan a tha a h-uile obrachadh a dùin an t-sruth a' gabhail thairis.
Beachdaich air na dòighean bunaiteach InputStream chlas:
- int ri fhaighinn () - a 'tilleadh a leughadh àireamh de bytes;
- int leughadh () - an-dràsta a 'gabhail Byte an stòrais, agus a' tilleadh an integer riochdachadh; ma uile bytes leughadh, -1 a thilleadh;
- int leughadh (Byte [] bufair) - Leughaidhean an bytes ri fhaotainn ann an thubhairt bufair ann an riochd Byte ordugh seòrsa (àireamh de bytes leughadh bufair co-ionnan ri meud a shònrachadh agus a thilleas an àireamh de bytes leughadh lean agus ma tha a h-uile rim faotainn bytes a 'leughadh, a' tilleadh -1);
- int leughadh (Byte [] bufair, Int chothromachadh, int àireamh de bytes) - cus de roimhe dòigh, a 'dèanamh an aon rud, ach le a shònrachadh "a chothromachadh"-suidheachadh agus a' leughadh cho math suidhichte anns an "uile bytes";
- Leum fada (fhada Byte cunntadh) - an àireamh de bytes skips agus a thilleas an dearbh àireamh a chall.
InputStream a chur an gnìomh grunn chlasaichean a dhealbhadh gus obair còmhla ri diofar sheòrsaichean stòran agus dàta. Gu h-ìosal a 'sealltainn an oighreachd craobh.
leughadh faidhlichean
Byte sruth a leughadh dàta bho faidhlichean a chur an gnìomh clas FileInputStream. Airson Fosgail faidhle a leughadh bytes, gu leòr airson a 'cruthachadh eisimpleir de chlas, a' dol seachad gus a constructor faidhle ainm mar argamaid. Ma tha am faidhle a ghluasad gu ainm nach eil ann, bidh e a 'tilgeil an-seòrsa ach a-mhàin FileNotFoundException.
Ann an cùis soirbheachail fosgailte faidhle, ag obair còmhla riutha air a dhèanamh a 'cleachdadh na dòighean a tha air a mhìneachadh gu h-àrd, mar a tha an dèidh FileInputStream InputStream.
Leughadh prìomhadail dàta seòrsa
Anns an eisimpleir gu h-àrd a 'toirt iomradh air an obair le Byte luachan, a dh'fhaodar a mhìneachadh mar samhlaidhean. Ach dè ma dh'fheumas sinn a leughadh an integer, fractional no boolean a luach? Gus seo a dhèanamh ann an Java InputStream neo-dhìreach a 'leudachadh a' chlas DataInputStream. Tha an clas seo a th 'còmhdach airson InputStream, a tha a' dol seachad air a shon aig an cruthachadh mar constructor argamaid. Tha an seòrsa snàithlean a 'leughadh an dàta ann an Binary fhoirm.
DataInputStream cuideachd a 'buileachadh an DataInput eadar-aghaidh agus a dòighean airson a leughadh prìomhadail dàta seòrsa. Gu h-ìosal tha liosta de na dòighean sin.
Dòigh-ainmean a 'bruidhinn air an son fhèin - gach aon dhiubh air a dhealbh gus a' leughadh cuid de dàta seòrsa.
Bufairean a 'cur sruth
Bufairean sruth dàta a tha leughadh a thuig BufferedInputStream clas ann an Java. InputStream a phasgadh le bhith a 'chlas seo. Tha an clas seo a 'cur nam bufair-sruth, a' leigeil tu a leughadh aig an aon àm nach eil ach aon grunn bytes. Tha seo ga dhèanamh comasach gu mòr a 'leasachadh coileanadh nan obrachadh. BufferedInputStream shliochd InputStream tha neo-dhìreach, agus mar sin a shealbhaicheas na h-uile na dòighean a tha air an ainmeachadh gu h-àrd.
Tha an clas seo tha dà constructors:
- BufferedInputStream (InputStream a 'cur sruth);
- BufferedInputStream (InputStream a 'cur sruth, int bufair meud)
Ainm sgrìobhte a-dealbhachaidh a ghabhas tuigse fhaighinn air a 'chiad' cur default bufair meud, agus anns an dara e comasach do chuir e làimh.
co-dhùnadh
Sinn ath-bhreithneachadh bunaiteach a thoirt gu buil InputStream. Ma dh'fheumas tu iompachadh fhaighinn bytes ri sreang ann an Java InputStream gu String (), gu mì-fhortanach, chan e cus cuideim air, mar sin, gum bi e gu sònraichte a 'cleachdadh innealan, me IOUtils bho Apache Commons leabharlainn.
Similar articles
Trending Now