Java 运行dos的copy_Java实现DOS中的Copy命令

import java.io.*;

import java.util.Scanner;

public class fileCopy

{

public static void main(String []args) throws Exception

{

try{

if("Copy".equals(args[0]) || "copy".equals(args[0]))

{

File file1 = new File(args[1]); // 指定要操作的源文件路径

if(file1.exists()) //如果源文件存在

{

File file2 = new File(args[2]); // 指定要操作的目标文件路径

if(file2.exists())//如果目标文件存在

{

FileReader fr = new FileReader(args[1]);   //创建一个FileReader对象   从磁盘读

BufferedReader br = new BufferedReader(fr);    //创建一个BufferedReader对象

Scanner input = new Scanner(System.in) ;

System.out.print("是否要覆盖目标文件?    (y/n)  ");

String x= input.next();

if("y".equals(x)|| "Y".equals(x))

{

FileWriter fw =new FileWriter(args[2]);    //创建一个FileWriter对象   写到磁盘

BufferedWriter bw =new BufferedWriter(fw);     //创建一个BufferedReader对象

if(br.ready())

{

String tmp=null;

while((tmp=br.readLine())!=null)

{

bw.write(tmp);                              //写一行

bw.newLine();                               //写一个换行符

}

}

bw.flush();            //清空缓存

bw.close();            //关闭流

fw.close();            //关闭流

br.close();                                   //关闭流

fr.close();                                   //关闭流

System.out.println("成功覆盖文件!");

}

else

{

FileWriter fw =new FileWriter(args[2],true);    //创建一个FileWriter对象   写到磁盘

BufferedWriter bw =new BufferedWriter(fw);     //创建一个BufferedReader对象

if(br.ready())

{

String tmp=null;

while((tmp=br.readLine())!=null)

{

bw.write(tmp);                              //写一行

bw.newLine();                               //写一个换行符

}

}

bw.flush();            //清空缓存

bw.close();            //关闭流

fw.close();            //关闭流

br.close();                                   //关闭流

fr.close();                                   //关闭流

System.out.println("成功追加文件!");

}

}

else

{

FileReader fr = new FileReader(args[1]);   //创建一个FileReader对象   从磁盘读

BufferedReader br = new BufferedReader(fr);    //创建一个BufferedReader对象

FileWriter fw =new FileWriter(args[2]);    //创建一个FileWriter对象   写到磁盘

BufferedWriter bw =new BufferedWriter(fw);     //创建一个BufferedReader对象

System.out.println("不存在目标文件,正在自动生成一个新文件!");

if(br.ready())

{

String tmp=null;

while((tmp=br.readLine())!=null)

{

bw.write(tmp);                              //写一行

bw.newLine();                               //写一个换行符

}

}

bw.flush();            //清空缓存

bw.close();            //关闭流

fw.close();            //关闭流

br.close();                                   //关闭流

fr.close();                                   //关闭流

}

}

else

{

System.out.println("源文件不存在!");

}

}

else

{

System.out.println("输入错误!");

}

}

catch (IOException e)

{

e.printStackTrace();

}

}

}

0818b9ca8b590ca3270a3433284dd417.png


版权声明:本文为weixin_36280648原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。