关于java IO中write的个人理解

来源:互联网 发布:淘宝死店盘活 编辑:程序博客网 时间:2024/05/22 13:31

今天无意间写错了一段代码。具体如下我平时都是直接读一个字节或者用包装流。起初我以为这样也可以就没有在意但是看到写入的文件。我才明白wirte的方法是自动将你写入的int 或者byte型数据以一定格式写入文件。而这个代码我声明了字节长度为128所以他每次返回值128(除了最后一次可能不够128)而我写入length只是写进去了一个整型值为128的数字。我们要是想用字节缓冲器的话就应该用os.write(b,0,length)这条语句因为b是我们声明的数组变量名。write方法会一次从这个数组中写入length个长度的b[i]的值(0<=i<=length)这样就正确了。用字节缓冲区的好处就是为了CPU减少对硬盘的操作。至于读数据也是这个道理。


原创粉丝点击