FileInputStream的读取和FileOutputStream的写入

14 篇文章 1 订阅
package day08;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class I_copydemo {

	/**使用文件字节输入流FIS与文件字节输出流FOS
	 * 实现文件的复制操作
	 * @param args
	 * @throws IOException 
	 */
	public static void main(String[] args) throws IOException {
		/**
		 * 1:创建FIS用于读取源文件
		 * 2:创建FOS用于向目标文件写数据
		 * 3:循环操作
		 * 		3.1:从原文件读取一个字符
		 * 		3.2:将该字节写入目标文件
		 * 4:关闭两个流
		 */
		FileInputStream fis=new FileInputStream("day07_am.zip");
		FileOutputStream fos=new FileOutputStream("day07_copy2.zip");
//		int d=0;//保存每次读取的一个字节
//		while((d=fis.read())!=-1){
//			fos.write(d);
//		}
		int len=0;
		byte[] buf=new byte[1024*10];//开辟一个缓冲区
		//read方法,读取buf.length长度的字节到buf这个字节数组
		//len读入缓冲区的字节总数,如果因为已经到达文件末尾而没有更多的数据,则返回 -1
		while((len=fis.read(buf))!=-1){
			//将指定 byte 数组中从偏移量 off 开始的 len 个字节写入此文件输出流。
			fos.write(buf,0,len);
		}
		fis.close();
		fos.close();
		System.out.println("拷贝完毕");
		
	}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值