文件读写的常用的两种方式

  第一种:

 1 File d=new File(...);//被读取数据的文件
 2 File x=new File(...);//要写入数据的文件
 3 FileInputStream fis=new FileInputStream(d);//读文件的字节流
 4 FileOutputStream fos=new FileOutputStream(x);//写文件的字节流
 5 //定义一个缓存区数组
 6 byte[] buf=new byte[1024];
 7 int len=0;
 8 while(len=fis.read(buf))!=-1){
 9     fos.write(buf,0,len);
10     }
11     fos.close();
12     fis.close();
13 }

  其中:read(byte[] b)方法的作用是从此输入流中将最多b.length个字节的数据读入一个byte数组中。

     write(byte[] b,int off, int len)方法的作用是将指定byte数组中从偏移量off开始的len个字节写入此文件输出流

  这种方式比较常用。

  第二种:

 1  File d=new File(...);//被读取数据的文件
 2  File x=new File(...);//要写入数据的文件
 3  FileInputStream fis=new FileInputStream(d);//读文件的字节流
 4  FileOutputStream fos=new FileOutputStream(x);//写文件的字节流
 5 
 6 BufferedInputStream bufis=new BufferedInputStream(fis);
 7 BufferedInputStream bufos=new BufferedOutputStream(fos);
 8     int ch=0;
 9     while((ch=bufis.read())!=-1){
10         bufos.write(ch);
11     }
12 bufos.close();
13 bufis.close();
14 }

  BufferedInputStream和BufferedOutputStream创建时,会创建一个内部缓冲区数组。

原文地址:https://www.cnblogs.com/dazuihou/p/3591292.html