编程论坛
注册
登录
编程论坛
→
JAVA论坛
关于IO流
小牛
发布于 2016-05-12 21:44, 2378 次点击
inputStream里有 read(byte[] b) 和 read(byte[] b, int off, int len) 这二个方法。 这里的 b 是缓冲区吗? 这里与bufferedReader 里的缓冲区有什么区别,一直搞不清楚。
3 回复
#2
狸子离
2016-05-13 18:01
也是缓冲区,个人感觉没多大区别,不过bufferedReader是属于字符流,用来读取字符串的 , inputStream 是字节流,可以读取任何二进制文件包括字符,作用方向都不一样了 拿来比较就不现实了
#3
张凯_207
2016-05-17 17:46
和缓冲区差不多,字节数组缓冲区
#4
Cai_xw1993
2016-05-19 21:57
read(byte[])是以字节读取的, BufferedReader是一个字符串的缓冲区,读写都是以字符的形式进行的。
在Unicode字符中,一个字符等于两个字节,所以有中文的情况下使用read(byte[])可能会出现乱码,使用BufferedReader以字符形式读取就不会,
read(byte[])一般用于流式文件的读取。
(个人理解)。
1