日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

字節與字符的轉化接口

系統 2198 0

字節與字符的轉化接口

另外數據持久化或網絡傳輸都是以字節進行的,所以必須要有字符到字節或字節到字符的轉化。字符到字節需要轉化,其中讀的轉化過程如下圖所示:

圖 5. 字符解碼相關類結構

圖 5. 字符解碼相關類結構

InputStreamReader 類是字節到字符的轉化橋梁,InputStream 到 Reader 的過程要指定編碼字符集,否則將采用操作系統默認字符集,很可能會出現亂碼問題。StreamDecoder 正是完成字節到字符的解碼的實現類。也就是當你用如下方式讀取一個文件時:

清單 1.讀取文件
         try { 
            StringBuffer str = new StringBuffer(); 
            char[] buf = new char[1024]; 
            FileReader f = new FileReader("file"); 
            while(f.read(buf)>0){ 
                str.append(buf); 
            } 
            str.toString(); 
 } catch (IOException e) {}
      

FileReader 類就是按照上面的工作方式讀取文件的,FileReader 是繼承了 InputStreamReader 類,實際上是讀取文件流,然后通過 StreamDecoder 解碼成 char,只不過這里的解碼字符集是默認字符集。

寫入也是類似的過程如下圖所示:

圖 6. 字符編碼相關類結構

圖 6. 字符編碼相關類結構

通過 OutputStreamWriter 類完成,字符到字節的編碼過程,由 StreamEncoder 完成編碼過程。

字節與字符的轉化接口


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 泊头市| 大英县| 朝阳市| 盖州市| 文山县| 衡东县| 大连市| 锦屏县| 扶余县| 海原县| 凉城县| 托克逊县| 太谷县| 油尖旺区| 富顺县| 清丰县| 衢州市| 临海市| 罗田县| 邢台市| 罗江县| 贵港市| 巴林左旗| 民权县| 蒙自县| 霍城县| 阿巴嘎旗| 涟水县| 广丰县| 元谋县| 汉中市| 嘉义市| 璧山县| 昌宁县| 双流县| 鄂尔多斯市| 天镇县| 潮安县| 嘉鱼县| 曲阳县| 清水县|