当前访客身份:游客 [ 登录 | 加入开源中国 ]

代码分享

当前位置:
代码分享 » Java  » 编程基础
hyh122

java实现文件内容的复制

hyh122 发布于 2014年10月27日 11时, 10评/7054阅
分享到: 
收藏 +0
2
将一个文件的内容复制到另一个文件中
标签: <无>

代码片段(1) [全屏查看所有代码]

1. [代码][Java]代码     跳至 [1] [全屏预览]

package example;

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) {
		// TODO Auto-generated method stub
		System.out.println(args.length);
		/**
		 * 在args参数中传进两个文件的路径,可以在run as->run configuration的arguments设置args的参数
		 *
		 */
		if (args.length != 2) {
			System.out.println("输入的参数不正确!");
			System.exit(1);
		}
		File file1 = new File(args[0]);
		File file2 = new File(args[1]);

		if (!file1.exists()) {
			System.out.println("源文件不存在!");

		}
		InputStream fileInputStream = null;
		try {
			fileInputStream = new FileInputStream(file1);
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		OutputStream fileOutputStream = null;
		try {
			fileOutputStream = new FileOutputStream(file2, true);
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		if (fileInputStream != null && fileOutputStream != null) {
			int temp = 0;
			try {
				/**
				 * 边读边写
				 */
				while ((temp = fileInputStream.read()) != -1) {
					fileOutputStream.write(temp);
				}
				System.out.println("复制完成");
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
				System.out.println("复制失败");
			} finally {
				try {
					fileInputStream.close();
				} catch (IOException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
				try {
					fileOutputStream.close();
				} catch (IOException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}

		}

	}

}


开源中国-程序员在线工具:Git代码托管 API文档大全(120+) JS在线编辑演示 二维码 更多»