- 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();
- }
- }
- }
- }
- }
- //该片段来自于http://www.codesnippet.cn/detail/0202201614523.html
来源: http://www.codesnippet.cn/detail/0202201614523.html