黑马程序员技术交流社区
标题:
使用带缓冲功能的字节流复制文件
[打印本页]
作者:
hopestar
时间:
2015-6-9 21:34
标题:
使用带缓冲功能的字节流复制文件
/*分析: 建立FileInputStream实例对象和FileOutputStream实例对象,
并把FileInputStream实例对象作为BufferedInputStream构造函数的实参传递过去进行初始化。
建立BufferedInputStream对象作为引用指向被初始化的BufferedInputStream对象,
然后在调用本类对象的read方法依次取出原文本数据,在调用BufferedOutputStream对象的write方法
把从read方法取出的数据写到目标文件中。
*/
import java.io.*;
public class Test7{
public static void main(String[] args) throws Exception{
BufferedInputStream bf=null;
BufferedOutputStream bo=null;
try{
//创建字节流读取对象并指定要读的文件。
FileInputStream fis=new FileInputStream("C:\\12.avi");
//创建字节流输入对象并创建了读取文件之后的存放位置。
FileOutputStream fo =new FileOutputStream("C:\\11.avi");
//创建了读取缓冲流对象并关联指定的字节流读取对象。
bf=new BufferedInputStream(fis);
//创建了输入缓冲流对象并关联指定的字节流输入对象。
bo=new BufferedOutputStream(fo);
int bt=0;
while((bt=bf.read())!=-1)//循环一个字节一个字节的读取原始数据并复制给bt。
{
bo.write(bt);//循环把bt的数据写入缓冲流中。
}
}
catch(FileNotFoundException e)
{
throw new FileNotFoundException("盘符填写不正确,没有此盘符");
}
catch(IOException e)
{
throw new IOException("存入数据异常");
}
finally
{try
{
bf.close();//关闭读取流资源。
}
catch(IOException e)
{
throw new IOException("输入流资源关闭失败");
}
try
{
bo.close();//关闭输入流资源。
}
catch(IOException e)
{
throw new IOException("输入流资源关闭失败");
}
}
/*FileInputStream fs=new FileInputStream("C:\\1.png");
FileOutputStream ft=new FileOutputStream("C:11.png");
InputStreamReader isr=new InputStreamReader(fs);
OutputStreamWriter osw=new OutputStreamWriter(ft);
BufferedReader br=new BufferedReader(isr);
BufferedWriter bw=new BufferedWriter(osw);
String line=null;
while((line=br.readLine())!=null)
{
bw.write(line);
bw.newLine();
}
br.close();
bw.close();
*/
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2