关于字符流和字节流

字符流,顾名思义,是面向字符的。Java类库根据不同平台、不同编码做了相应处理,使得对于流的使用者来说,比特层是透明的,可以不关心具体传输的是什么比特(即字节)。

 字节流,就是直接使用流中的比特(即字节),类只保证正确传输字节,不保证字节的具体含义,字节的具体含义是用户之间约定的。 因为字节是组成数据的最小单位,所以,字节流可以承载任何形式的数据,包括字符。

Java类库提供了一系列经过滤的字节流,称为Filter Stream,使得它们可以直接传输特定类型的数据。其中的Data Stream,称为数据流,用来传输Java内置的数据类型,如int,float等。使用这些过滤的字节流时,比特层也是透明的。

 广义上说,字符流也是字节流的一种。但是习惯上,把专门传输字符的流称为字符流,把用于其它任何用途的流称为字节流。 Java中的字符流都扩展自Reader或Writer,字节流都扩展自InputStream或OutputStream。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章