利用IO流实现文件拷贝

版权声明: https://blog.csdn.net/weixin_40072979/article/details/83023802

文件的拷贝,只需将文件字节输入流和输出流结合起来即可

package com.jianshun;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
/**
 * 文件拷贝:文件字节输入流,输出流
 * @author Administrator
 *
 */
public class Copy {

	public static void main(String[] args) {
		copy("src/com/jianshun/Copy.java","copy.txt");
	}
	
	public static void copy(String srcPath,String destPath){
		//,2,创建源
		File src = new File(srcPath);
		File dest = new File(destPath);
		//,2,选择流
		InputStream in = null;
		OutputStream out = null;
		try {
			in = new FileInputStream(src);
			out = new FileOutputStream(destPath);
			//3,操作,分段读取
			byte[] flush = new byte[1024];
			int len = -1;//接收长度
			while((len = in.read(flush)) != -1){
				out.write(flush, 0, len);//分段写出
			}
			out.flush();
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}finally{
			//4,释放资源
			if(in !=null){
				try {
					in.close();
				} catch (IOException e) {
					e.printStackTrace();
				}
			}
			
			if(out != null){
				try {
					out.close();
				} catch (IOException e) {
					e.printStackTrace();
				}
			}
		}
	}

}

猜你喜欢

转载自blog.csdn.net/weixin_40072979/article/details/83023802