• 题目:编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能

    • 要求:MyCP支持两个参数:

      • java MyCP -tx XXX1.txt XXX2.bin 用来把文本文件(内容为十进制数字)转化为二进制文件
      • java MyCP -xt XXX1.bin XXX2.txt 用来二进制文件把转化为文本文件(内容为十进制数字)

  • 前置知识

    • cp命令:

      • 作用:cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息。
      • 参数:cp指令根据参数选择功能

  • 具体实现

    • 产品代码:
    import java.io.*;
    
     public class MyCP {
    public static void main(String args[]) {
    String choose = args[0];
    //获得第一个参数
    String File1 = args[1];
    //获得第二个参数:文件名
    String File2 = args[2];
    //获得第三个参数:文件名
    File sourceFile = new File(File1);
    //读取的文件
    File targetFile = new File(File2);
    //写入的文件
    int ch = 0;
    String result = "";
    //转换结果
    if (choose.equals("-tx")) {
    ch = 1;
    }
    else if (choose.equals("-xt")) {
    ch = 2;
    }
    //参数判断
    else {
    System.out.println("输入参数错误!");
    System.exit(0);
    }
    //如果参数输入错误,退出程序
    try {
    FileWriter out = new FileWriter(targetFile);
    //指向目的地的输出流
    FileReader in = new FileReader(sourceFile);
    //指向源的输入流
    BufferedReader infile = new BufferedReader(in);
    BufferedWriter outfile = new BufferedWriter(out);
    //缓冲流
    String number = infile.readLine();
    if (ch == 1) {
    int n, temp = Integer.parseInt(number);
    for (int i = temp; i > 0; i = i / 2) {
    if (i % 2 == 0)
    n = 0;
    else
    n = 1;
    result = n + result;
    }
    } else if (ch == 2) {
    result = Integer.valueOf(number, 2).toString();
    }
    outfile.write(result);
    outfile.flush();
    outfile.close();
    } catch (IOException e) {
    System.out.println("Error " + e);
    }
    }

}


--- - 运行截图
- 参数为-tx时
![](https://img2018.cnblogs.com/blog/1592121/201904/1592121-20190427220104652-217300836.png)
![](https://img2018.cnblogs.com/blog/1592121/201904/1592121-20190427220110341-554248219.png) - 参数为-xt时
![](https://img2018.cnblogs.com/blog/1592121/201904/1592121-20190427220123396-349756880.png)
![](https://img2018.cnblogs.com/blog/1592121/201904/1592121-20190427220127985-766980837.png) --- - [码云托管链接](https://gitee.com/fzlzc/java2019/blob/master/src/MyCP.java)

编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能的更多相关文章

  1. 补交 20155202 蓝墨云班课 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能

    蓝墨云班课 编写MyCP.java 要求: 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX ...

  2. 《Linux下cp XXX1 XXX2的功能》的实现

    <Linux下cp XXX1 XXX2的功能>的实现 一.题目要求 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyC ...

  3. 学号20175313 《实现Linux下cp XXX1 XXX2的功能(一)》第九周

    目录 MyCP 一.题目要求 二.题目理解 三.需求分析 四.设计思路 五.伪代码分析 六.代码链接 七.代码实现过程中遇到的问题 八.运行结果截图 九.参考资料 MyCP 一.题目要求 编写MyCP ...

  4. 20175303 Mycp实现Linux下cp xxx1 xxx2的功能

    20175303 Mycp实现Linux下cp xxx1 xxx2的功能 一.题目要求 编写MyCP2.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP2支持两个参数: ja ...

  5. 学号20175313 《实现Linux下cp XXX1 XXX2的功能(二)》第九周

    目录 MyCP2 一.题目要求 二.题目理解 三.需求分析 四.设计思路 五.伪代码分析 六.代码链接 七.代码实现过程中遇到的问题 八.运行结果截图 九.心得体会 十.参考资料 MyCP2 一.题目 ...

  6. 编程实现类似Linux下cp功能

    MyCP的代码实现 一.题目要求: 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2.bi ...

  7. Java java jdk在Linux下安装与环境变量的配置

    java jdk在Linux下安装与环境变量的配置 by:授客 QQ:1033553122 linux环境:CentOS-6.0-x86_64-bin-DVD1.iso [root@localhost ...

  8. windows下类似Linux下的grep命令

    今天要查看windws下代理服务器有哪些IP连接过来,但使用 netstat -na 后出现很多连接会话,不方便查看. 想到Linux下的grep非常方便,于是网络上搜寻,还是有类似的命令findst ...

  9. Java学习笔记——Linux下安装配置tomcat

    朝辞白帝彩云间,千里江陵一日还. 两岸猿声啼不住,轻舟已过万重山. ——早发白帝城 首先需要安装配置JDK,这里简单回顾下.Linux下用root身份在/opt/文件夹下创建jvm文件夹,然后使用ta ...

随机推荐

  1. 算法笔记-exgcd

    扩展欧几里得 扩展欧几里德算法是用来在已知a, b求解一组x,y, 使它们满足贝祖等式: ax+by = gcd(a, b) =d(解一定存在,根据数论中的相关定理). 扩展欧几里德常用在求解模线性方 ...

  2. 移除 iview的Table组件固定两头后box-shadow阴影效果

    .ivu-table-fixed{ box-shadow:0 0 0 #fff; }

  3. "=="和 equals 方法究竟有什么区别?

    "=="和 equals 方法究竟有什么区别? ==操作符专门用来比较两个变量的值是否相等,也就是用于比较变量所对应的内存中所存储的数值是否相同, 要比较两个基本类型的数据或两个引 ...

  4. LVS调度算法

    LVS-四层调度 1.轮询算法:Round Robin - RR 后端RS性能一致,请求开销差别小 2.加权轮询:Weighted Round Robin - WRR 后端RS性能有差异,请求开销差异 ...

  5. mysql索引原理

    1.B+Tree 索引的数据结果是B+Tree,它比BTree查询时,以更少的IO次数占优势. 2.聚集索引与非聚集索引 聚集索引:索引的逻辑顺序与磁盘上数据的物理顺序相同.(表中最多只有一个) 比如 ...

  6. ftm国际化解决方案

    记录一下踩过的坑,在使用ftm:message的时候我发现这个的国际化是依赖于本地浏览器的语言环境的!关于自主设置这个语言的方法有如下3种:(个人建议使用第二种,可以更加灵活且有效!第一种我这边没有生 ...

  7. NABCD--团队项目1

    N: 1.学校中有很多学生是外省的,然后不知道附近有什么地方周末可以去玩. 2.学校中学生有很多用不到的东西但是联系不到合适的买家. A: 我们可以做一个软件,通过学号注册登陆软件,这样可以防止有人去 ...

  8. Android一些问题

    1.wait()与sleep() wait()方法会释放占有的对象锁,当前线程进入等待池,释放cpu, 而其他正在等待的线程即可抢占此锁,获得锁的线程即可运行程序: sleep()方法则表示,当前线程 ...

  9. docker报错:Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

    在github上开到这样一条 于是 这两个选项换着来 具体怎么回事,咱也不知道,咱也不敢问 改完后蹭蹭的

  10. Tarjan + bfs HYSBZ 1179Atm

    1179: [Apio2009]Atm Time Limit: 15 Sec  Memory Limit: 162 MBSubmit: 3250  Solved: 1346[Submit][Statu ...