1、流的定義:
流是一個很形象的概念,當程序需要讀取數據的時候,就會開啟一個通向數據源的流。這個數據源可以是文件,內存,或是網絡連接。類似的,當程序需要寫入數據的時候,就會開啟一個通向目的地的流。品牌網站建設,這時候你就可以想象數據好像在其中“流”動一樣。
2、流的本質: 數據傳輸
3、流的劃分:
(1)按照方向:
輸入流: 從磁盤(存儲介質)---------->當前程序(內存)的過程
基類: InputStream 、 Reader
輸出流: 從當前程序(內存)---------->磁盤的過程(存儲介質)
基類: OutputStrem 、 Writer
(2)按照操作單元
字節(jié)流 : 二進制表示的數據,一個字節(jié)8個bit
基類: InputStream 、 OutputStream
字符流 : 將數據以字符形式表示,例如‘a’ ‘b’ 1、2、3
基類: Reader 、 Writer
(3)按照角色劃分:
節(jié)點流(介質流):低級流,連接程序和儲存介質的流
處理流(高級流):和節(jié)點流直接相連的流,
4、字節(jié)流、字符流的區(qū)別:
字節(jié): 存儲的是0101
字符: 存儲的字符,
(1) 讀寫單元不同:
字節(jié)流以字節(jié)(8 bit) 為單位
字符流以字符為單位,
(2)處理對象不同
字節(jié)流可操作所有類型的文件(視頻、圖片、音樂…)
字符流只能操作字符類型的文件,
(3)處理效率不同
字節(jié)流效率高,
字符流效率低,因為要涉及到編碼解碼
(4) 可移植性
字節(jié)流高,與平臺無關
字符流低,
5、字節(jié)和字符的相互轉換 (亂碼問題)
原因分析:
字節(jié)數組容量太小,最后幾個字節(jié)包含了一個字符的部分字節(jié)。
開始的指針不在某個字符的開始字節(jié)上。
解碼、譯碼的碼表不匹配
碼表:
ASCII碼 :一個字符的七位表示 ,對應的字節(jié)都是整數,0-xxxxxxx
ISO-8899-1 :拉丁碼表,以一個字節(jié)的8為表示,可以表示整數和負數,(最高位表示符號)
GBK :中文碼表,用兩個字節(jié)表示,2個字節(jié)中,第一個字節(jié)最高位為1,第二個字節(jié)的最高位為0;
Unicode :國際標準碼:無論什么文字,都是兩個字節(jié)
UTF-8 :基于Unicode,一個字節(jié)表示存儲信息,每個字節(jié)頭加入了編碼信息
編碼類:Charset
廣州天河區(qū)珠江新城富力盈力大廈北塔2706
020-38013166(網站咨詢專線)
400-001-5281 (售后服務熱線)
深圳市坂田十二橡樹莊園F1-7棟
Site/ http://www.szciya.com
E-mail/ itciya@vip.163.com
品牌服務專線:400-001-5281
長沙市天心區(qū)芙蓉中路三段398號新時空大廈5樓
聯(lián)系電話/ (+86 0731)88282200
品牌服務專線/ 400-966-8830
旗下運營網站:
Copyright ? 2016 廣州思洋文化傳播有限公司,保留所有權利。 粵ICP備09033321號