全心思齐网

字节流和字符流的区别?

字节流与字符流主要的区别是他们的的处理方式 字节流是最基本的,采用ASCII编码,所有的InputStream和OutputStream的子类都是,主要用在处理二进制数据,它是按字节来处理的 但实际中很多的数据是文本,又提出了字符流的概念,采用Unicode编码.它是按虚拟机的encode来处理,也就是要进行字符集的转化 这两个之间通过 InputStreamReader,OutputStreamWriter来关联,实际上是通过byte[]和String来关联 你只要把java处理字节流和字符流的类搞清楚就行了

匿名回答于2022-08-25 19:30:00


每次读写的字节数不同;

字符流是块读写,字节流是字节读写;

字符流带有缓存,字节流没有。

java流在处理上分为字符流和字节流。字符流处理的单元为2个字节的Unicode字符,分别操作字符、字符数组或字符串,而字节流处理单元为1个字节,操作字节和字节数组。

字符流和字节流,一个属性范围小,一个属性范围大,字符流只能是字符这一种类型,但是字节流中可以是字符,可以是二进制文件,可以是音频,可以是各种各样的类型,只要符合字节形式存储的都可以接字节流,而字符流只能接字符。

匿名回答于2022-08-28 07:23:28


定义不同:字节流能处理所有类型的数据(如图片、avi等),而字符流只能处理字符类型的数据。

读写单位不同:字节流以字节(8bit)为单位,字符流以字符为单位,根据码表映射字符,一次可能读多个字节

处理方式不同:Java的字节流 InputStream是所有字节输入流的祖先

OutputStream是所有字节输出流的祖先。

Java的字符流,Reader是所有读取字符串输入流的祖先

writer是所有输出字符串的祖先。

缓冲区不同:字节流读取的数据不经过缓存区。而字符流经过。

编码方式不同。

匿名回答于2022-09-01 06:29:07


相关知识问答