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(); } } }
Java实现DOS中的Copy命令的更多相关文章
- Oracle数据库间的数据复制 - SQLPlus中的COPY命令
Copy命令可以实现不同Oracle数据库间的数据的复制,也是可以实现同一数据库的数据复制,其性能表现和导入/导出相同. 根据9i文档,说Copy命令未来会不支持,但实际上Oracle 11g仍然支持 ...
- 畸形的 dockerfile中的COPY命令-
dockerfile中的COPY是指COPY 指定目录的“子级目录”下所有的目录和文件,到指定目录中,这个shell中的cp命令大相径庭,使得很多人纳闷,怎么cpy过去的文件不是自己想要的
- DOS中的ECHO命令详解
1. 作为控制批处理命令在执行时是否显示命令行自身的开关 格式:ECHO [ON|OFF] 如果想关闭“ECHO OFF”命令行自身的显示,则需要在该命令行前加上“@”. 2. 显示当前ECHO ...
- DOS中的CD命令详解
CD命令是改变子目录的命令.格式:CD [路径] . 值得明确的是:CD命令只能进入当前盘符中的文件夹,改变操作的根目录(改变操作盘符),则不需用cd.例如你当前是在c:盘下,要到d:盘,只需键入d: ...
- dos中执行cd命令切换不到对应的盘解决方法
可以使用cd命令,不过需要加参数 /d,如: cd /d e:
- Dockerfile中COPY命令的简单性
dockerfile中的COPY命令是不会拷贝目录结构的,它只会单纯把包含的所有文件拷贝到另一个目录中去. 相关链接:https://www.cnblogs.com/sparkdev/p/957324 ...
- Dockerfile 中的 COPY 与 ADD 命令
Dockerfile 中提供了两个非常相似的命令 COPY 和 ADD,本文尝试解释这两个命令的基本功能,以及其异同点,然后总结其各自适合的应用场景. Build 上下文的概念 在使用 docker ...
- DOS中命令的格式
---------------siwuxie095 一.DOS中,命令使用格式的一般形式 用中文表达的形式为: [路径] 关键字 [盘符] [路径] 文件名 [扩展名] (参数) [参数 ...
- 【Docker】涨姿势,深入了解Dockerfile 中的 COPY 与 ADD 命令
参考资料:https://www.cnblogs.com/sparkdev/p/9573248.html Dockerfile 中提供了两个非常相似的命令 COPY 和 ADD,本文尝试解释这两个命令 ...
随机推荐
- Mysql性能优化二:索引优化
1 索引的类型 UNIQUE唯一索引 不可以出现相同的值,可以有NULL值. INDEX普通索引 允许出现相同的索引内容. PRIMARY KEY主键索引 不允许出现相同的值,且不能为NULL值,一个 ...
- number (1)eclipse 连接数据库报错 数据库信息不对导致的出错
- Node fs模块同步读取写入追加
JS文件中const fs = require("fs");console.log("开始进入文件读取.."); //同步的写入var data = fs.re ...
- git 快捷键
实际上就是弄了个别名 $ git config --global alias.st status $ git config --global alias.ci commit $ git config ...
- MySQL在Read Uncommitted级别下写操作加X锁
很多文章认为MySQL在读未提交(Read Uncommitted)的隔离级别下,写操作是不加锁的,然而实际上并不是,在RU级别下,写操作加有X锁. 实践出真知 以前,我也认为RU隔离级别下,写操作不 ...
- 【转】CNN卷积神经网络_ GoogLeNet 之 Inception(V1-V4)
http://blog.csdn.net/diamonjoy_zone/article/details/70576775 参考: 1. Inception[V1]: Going Deeper with ...
- codeforces1045B
CF1045B 自己瞎鸡巴yy了一下,可知若一个数X不能被表示出来,那么X所有的表示方法都在A集合中,如a1,a2,a3······an-1,an-2中若a1+ai不能被表示出来,那么如果a1到ai是 ...
- Codeforces976D Degree Set 【构造】
题目大意:构造一个点数为dn+1的无向图,无向图中点的度数的集合等于给出的集合d. 题目分析: 当n=0的时候,一个点即可. 当n=1的时候,答案是一个包含d1+1个点的完全图. 否则将d2~dn-1 ...
- Java 8 forEach简单例子(转载)
forEach and Map 1.1 通常这样遍历一个Map Map<String, Integer> items = new HashMap<>(); items.put( ...
- MT【66]寻找对称中心
设函数$f(x)=2x-cosx,{a_n}$是公差为$\frac{\pi}{8}$的等差数列,$f(a_1)+f(a_2)+f(a_3)+f(a_4)+f(a_5)=5\pi$,则 $[f(a_3) ...