???? SequenceInputStream 類可以將幾個(gè)輸入流串聯(lián)在一起,合并為一個(gè)輸入流。當(dāng)通過(guò)這個(gè)類來(lái)讀取數(shù)據(jù)時(shí),它會(huì)依次從所有被串聯(lián)的輸入流中讀取數(shù)據(jù)。對(duì)于程序來(lái)說(shuō),就好像是對(duì)同一個(gè)流操作。SequenceInputStream類的構(gòu)造方法為:?
?????
???? SequenceInputStream(Enumeration e) --------在枚舉類型的參數(shù)e中包含了若干需要被串聯(lián)的輸入流。?
???? SequenceInputStream(InputStream s1, InputStream s2) ------參數(shù)s1和s2代表兩個(gè)需要被串聯(lián)的輸入流。順序輸入流先讀取s1中的數(shù)據(jù),再讀取s2中的數(shù)據(jù)。?
?? 下面演示SequenceInputStream的用法?
??
??? 以上main()方法 先創(chuàng)建了兩個(gè)字節(jié)數(shù)組輸入流,假定本地的操作系統(tǒng)的默認(rèn)的字符編碼為GBK,其實(shí)就是 GBK。 "你".getBytes()方法返回 “你”的GBK字符編碼, "好".getBytes()方法返回字符“好”的GBK字符編碼。 main()方法接著創(chuàng)建了一個(gè)順序輸入流,它把前面兩個(gè)輸入流串聯(lián)了起來(lái)。 打印結(jié)果如下:?
?
?? 在上邊的打印結(jié)果中, 196和227為“你”的GBK 字符編碼, 186和195為 "好" 的字符編碼。?
??? 程序只要關(guān)閉順序輸入流,它的 close()方法就會(huì)依次關(guān)閉所有被串聯(lián)的輸入流。?
?????
???? SequenceInputStream(Enumeration e) --------在枚舉類型的參數(shù)e中包含了若干需要被串聯(lián)的輸入流。?
???? SequenceInputStream(InputStream s1, InputStream s2) ------參數(shù)s1和s2代表兩個(gè)需要被串聯(lián)的輸入流。順序輸入流先讀取s1中的數(shù)據(jù),再讀取s2中的數(shù)據(jù)。?
?? 下面演示SequenceInputStream的用法?
- package ?xiaohang.com;??
- ??
- import ?java.io.ByteArrayInputStream;??
- import ?java.io.IOException;??
- import ?java.io.InputStream;??
- import ?java.io.SequenceInputStream;??
- ??
- public ? class ?SequenceTester?{??
- ???? public ? static ? void ?main(String[]?args)? throws ?IOException?{??
- ????????InputStream?s1?=? new ?ByteArrayInputStream( "你" .getBytes());??
- ????????InputStream?s2?=? new ?ByteArrayInputStream( "好" .getBytes());??
- ????????InputStream?in?=? new ?SequenceInputStream(s1,?s2);??
- ???????? int ?data;??
- ???????? while ?((data?=?in.read())?!=?- 1 )?{??
- ????????????System.out.println(data?+? "\t" );??
- ????????}??
- ????????in.close();??
- ????}??
- }??
??
??? 以上main()方法 先創(chuàng)建了兩個(gè)字節(jié)數(shù)組輸入流,假定本地的操作系統(tǒng)的默認(rèn)的字符編碼為GBK,其實(shí)就是 GBK。 "你".getBytes()方法返回 “你”的GBK字符編碼, "好".getBytes()方法返回字符“好”的GBK字符編碼。 main()方法接著創(chuàng)建了一個(gè)順序輸入流,它把前面兩個(gè)輸入流串聯(lián)了起來(lái)。 打印結(jié)果如下:?

?? 在上邊的打印結(jié)果中, 196和227為“你”的GBK 字符編碼, 186和195為 "好" 的字符編碼。?
??? 程序只要關(guān)閉順序輸入流,它的 close()方法就會(huì)依次關(guān)閉所有被串聯(lián)的輸入流。?
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
