20175202 葛旭阳 MyCP

一、题目要求

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

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

二、实验代码

二、实验步骤

1.编写,运行MyCP程序。

2.找到MyCP.class的所在位置。

3.通过我的电脑进入该位置,并创建两个文本文档,分别命名为gxy.txt和gxy1.txt。

4.进入gxy.txt,输入自己的学号“20175202”。

5.通过命令行输入java MyCP -tx gxy.txt gxy1.txt命令,将十进制数20175202转换为二进制数并保存在gxy1.txt中。

6.打开gxy1.txt文件,即可看到所得二进制数。

7.在gxy1.txt中从新输入一个二进制数如“11111111”。

8.在命令行中输入java MyCP -xt gxy1.txt gxy.txt命令,将二进制数转换为十进制数,并保存在gxy.txt中。

9.打开gxy.txt文件,即可看到所得的十进制数。

四、实验过程中遇到的问题

1.将两种功能写在一个程序中,怎么控制实现转二进制功能还是转十进制功能。

解决:因为控制命令是在命令行中输入的,并且只有-tx-xt两种,因此只需要在程序中调用equals方法进行比较即可。

2.在命令行输入正确的命令后,出现提示找不到主类MyCP。

解决:原因是只进入了含有MyCP.class文件的大目录,使用cd命令进入子目录后再输入命令,即可实现功能。

3.在二进制转十进制的过程中,在gxy1.txt文件夹中输入了二进制数11111111,然而在gxy.txt文件中没有出现正确十进制数字,而是一个奇怪的二进制数字。

解决:原因是输错了命令误将-xt命令数成了-tx命令,改正后,实现了功能。

原文地址:https://www.cnblogs.com/gexvyang/p/10787326.html