• MyOD(课下作业,选做)


    MyOD(课下作业,选做)

    代码要求

    • 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数:
    • java MyCP -tx XXX1.txt XXX2.bin 用来把文本文件(内容为十进制数字)转化为二进制文件
    • java MyCP -xt XXX1.bin XXX2.txt 用来二进制文件把转化为文本文件(内容为十进制数字)

    准备阶段

    • 借助之前的学习复习熟悉文件语法的运用
    • 二进制与十进制间的相互转化,借由网络资源了解到Integer.parseInt语句不仅可以实现字符到数的转化,还可以借由此语句进行其他进制到十进制的直接转化赋值

    代码实现

    • 创建文件输入输出流以及部分所需的变量
            String ch = args[0];
            String s1 = args[1];
            String s2 = args[2];
            File fromfile = new File(s1);
            File tofile = new File(s2);
            String result = "";
            FileReader in = new FileReader(fromfile);
            BufferedReader infile = new BufferedReader(in);
            FileWriter out = new FileWriter(tofile);
            BufferedWriter outfile = new BufferedWriter(out);
            String number = infile.readLine();
    
    • 实现十进制到二进制的转化
                if(ch.equals("-tx")) {
                    int n;
                    int number1 = Integer.parseInt(number);
                    for(int i=number1;i>0;i=i/2) {
                        if(i%2==0)
                            n = 0;
                        else
                            n = 1;
                        result = n + result;
                    }
                }
    
    • 实现二进制到十进制间的转化
                else if(ch.equals("-xt")) {
                    int number1 = Integer.parseInt(number,2);
                    result = String.valueOf(number1);
                }
    
    • 写入文件
                outfile.write(result);
                outfile.flush();
                outfile.close();
                out.close();
    

    运行结果截图


    码云链接

    链接

  • 相关阅读:
    jar强退出 JVM报错:Failed to write core dump. Core dumps have been disabled.
    配置 DHCP Snooping 和 IPSG
    OpenOffice
    RabbitMQ ADD
    YAPI 接口管理
    mysql:1153 Got a packet bigger than ‘max_allowed_packet’ bytes的解决方法
    修改端口的VLAN
    阿里云OSS设置跨域访问
    seata连接nacos 报错
    Linux登录超时问题
  • 原文地址:https://www.cnblogs.com/20175226wpy/p/10786849.html
Copyright © 2020-2023  润新知