流序列中的數(shù)據(jù)既可以是未經(jīng)加工的原始二進(jìn)制數(shù)據(jù),也可以是經(jīng)一定編碼處理后符合某種格式規(guī)定的特定數(shù)據(jù)。
因此Java中的流分為兩種:
1. 字節(jié)流:數(shù)據(jù)流中最小的數(shù)據(jù)單元是字節(jié)
2. 字符流:數(shù)據(jù)流中最小的數(shù)據(jù)單元是字符, Java中的字符是Unicode編碼,一個(gè)字符占用兩個(gè)字節(jié)。
字符流的由來:Java中字符是采用Unicode標(biāo)準(zhǔn),一個(gè)字符是16位,即一個(gè)字符使用兩個(gè)字節(jié)來表示。為此,JAVA中引入了處理字符的流。因?yàn)閿?shù)據(jù)編碼的不同,而有了對(duì)字符進(jìn)行高效操作的流對(duì)象。本質(zhì)其實(shí)就是基于字節(jié)流讀取時(shí),去查了指定的碼表。