我的java天地

          InputStream的三個read的區別

          1.read
          這個方法是對這個流一個一個字節的讀,返回的int就是這個字節的int表示方式
          以下是代碼片段,經過測試當eclipse的編碼為gbk時,轉化出的字符串不需經過重新編碼,如果eclipse的編碼為utf-8時則由byte轉成字符串需重新編成utf-8的

          InputStream in = Test.class.getResourceAsStream("/tt.txt");
          ??byte[]tt=new byte[15];//測試用的事前知道有15個字節碼
          ??while(in.available()!=0){
          ???
          ???for(int i=0;i<15;i++){
          ????tt[i]=(byte)in.read();
          ???}
          ??}
          ??String ttttt=new String(tt,"utf-8");
          ??System.out.println(ttttt);
          ??in.close();

          2.read(byte[]?b)
          這個方法是先規定一個數組長度,將這個流中的字節緩沖到數組b中,返回的這個數組中的字節個數,這個緩沖區沒有滿的話,則返回真實的字節個數,到未尾時都返回-1

          in = Test.class.getResourceAsStream("/tt.txt");
          ??byte [] tt=new byte[1024];
          ??int b;
          ??while((b=in.read(tt))!=-1){
          ???
          ???System.out.println(b);
          ??String tzt=new String(tt,"utf-8");
          ??
          ??
          ??System.out.println(tzt);

          3.read(byte[]?b, int?off, int?len)
          此方法其實就是多次調用了read()方法

          InputStream in = Test.class.getResourceAsStream("/tt.txt");
          ??//System.out.println(in.available());//此方法是返回這個流中有多少個字節數,可以把數組長度定為這個
          ??
          ??byte[]tt=new byte[in.available()];
          ??int z;
          ??while((z=in.read(tt, 0, tt.length))!=-1){
          ???System.out.println(new String(tt,"utf-8"));
          ??}


          posted on 2009-04-24 18:07 tobyxiong 閱讀(57566) 評論(2)  編輯  收藏 所屬分類: java

          評論

          # re: InputStream的三個read的區別 2014-07-19 11:18 zuidaima

          java通過InputStream讀取和寫入文件操作實例代碼下載:zuidaima.com/share/1758442014903296.htm  回復  更多評論   

          # re: InputStream的三個read的區別 2014-08-08 18:17 zuidaima

          java相關實例代碼下載:http://zuidaima.com/share/kjava-p1-s1.htm  回復  更多評論   

          <2009年4月>
          2930311234
          567891011
          12131415161718
          19202122232425
          262728293012
          3456789

          導航

          統計

          常用鏈接

          留言簿(3)

          隨筆分類(144)

          隨筆檔案(157)

          相冊

          最新隨筆

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 灯塔市| 宜都市| 辽源市| 宜宾县| 永康市| 曲麻莱县| 阳曲县| 安仁县| 甘谷县| 葵青区| 孟村| 康乐县| 土默特左旗| 凭祥市| 恩平市| 建瓯市| 繁昌县| 嘉义市| 元阳县| 涪陵区| 定远县| 普洱| 宁乡县| 海兴县| 平南县| 东至县| 喀什市| 嘉兴市| 玉树县| 栾川县| 鸡东县| 湘乡市| 白河县| 邳州市| 普宁市| 德江县| 嘉峪关市| 淮北市| 章丘市| 广丰县| 濮阳市|