个人觉得已经很不错了!我能不能说这是Java中比较基础的部分,文件操作也是要掌握的内容之一!要是觉得很难又不去好好思考只是一味吐槽老师讲的不好,那你的学习道路真心堪忧....
2016-12-20
我去看了看read(byte[])这个方法源码,发现他其实就是read(void)的封装,所以所谓的读取到byte数组方式读取效率高就是错误的
但是视频中两种方法执行时间相差很大,为什么呢?
因为读取mp3文件(3MB左右)的时候,读取到byte[]数组方式的缓冲区为8*1024Byte,即8KB,也就是只读了mp3文件的前8KB内容,而单字节读取方式是读取整个文件
但是视频中两种方法执行时间相差很大,为什么呢?
因为读取mp3文件(3MB左右)的时候,读取到byte[]数组方式的缓冲区为8*1024Byte,即8KB,也就是只读了mp3文件的前8KB内容,而单字节读取方式是读取整个文件
2016-12-19
一楼居然被赞最多,这明显是误解。其实视频中写read(buffer)完全可以。以下是源码
public int read(byte b[]) throws IOException {
return readBytes(b, 0, b.length);
}
很明显read(byte b[]) 调用了readBytes(b, 0, b.length)。
public int read(byte b[]) throws IOException {
return readBytes(b, 0, b.length);
}
很明显read(byte b[]) 调用了readBytes(b, 0, b.length)。
2016-12-11
常用中文字符用utf-8编码占用3个字节(大约2万多字),但超大字符集中的更大多数汉字要占4个字节(在unicode编码体系中,U+20000开始有5万多汉字)。
2016-12-07