Java 6.10知识点----字节输入输出流、文件的拷贝
复习回顾:
read方法有参数。public int read(byte b[ ]):读取b.length个字节的数据放到b数组中。返回值是读取的字节数。该方法实际上是调用下一个方法实现的 使用。 byte[] 参数作用是什么,建立这个数组的长度可以是什么?
首先应该创建一个byte[]数组,长度必须得是2的幂次方,作为缓冲数组来使用,可以利用读取文件的字节数来输出文件内容
也可以将字节数组中的数据转换为字符串输出
作用:可以很高效的完成文件内容的输出
案例1:文件图片的拷贝
利用InputStream和OutputStream类来实现,积极处理异常方式实现,加上finally语句,实现输入输出流的关闭
两种方法实现:1、read() write(n) 2、 byte[] b read(字节数组b) write(字节数组,0,n)
常用方法
实现代码:
注意:异常处理方式为积极处理,类型属于非运行时异常,
finally语句实现关闭流,由于局部变量的范围限制,应该在开头定义好全局变量,再调用构造方法
缓冲字节输入流和输出流
创建缓冲字节输入流和缓冲字节输出流对象。创建这个对象时,他的构造方法参数必须是字节流对象。
所以根据这个我们要做的第一步
创建字节流对象
第二步 以创建的字节流对象为参数创建缓冲字节输入流和输出流
案例2:利用BufferedInputStream 和BufferedOutputStream 完成图片的拷贝。
小结:此处在创建缓冲字节输入流和输出流对象时,首先创建字节流对象,再以此为参数调用构造方法