任务内容
1.编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数:
- java MyCP -tx XXX1.txt XXX2.bin 用来把文本文件(内容为十进制数字)转化为二进制文件
- java MyCP -xt XXX1.bin XXX2.txt 用来二进制文件把转化为文本文件(内容为十进制数字)
2.提交测试代码和运行结果截图,加上学号水印,提交码云代码链接。
实验结果
实验代码
import java.io.*;
public class Mycp {
public static void main(String[] args) throws Exception{
String x, y, a, result = "", num;
a = args[0];
x = args[1];
y = args[2];
try {
FileInputStream fis = new FileInputStream(x);
InputStreamReader isr = new InputStreamReader(fis);
BufferedReader in = new BufferedReader(isr);
PrintStream ps = new PrintStream(y);
num = in.readLine();
if (a.equals("-xt")) {
result = Integer.valueOf(num, 2).toString();
} else if (a.equals("-tx")) {
int n, temp = Integer.parseInt(num);
for (int i = temp; i > 0; i = i / 2) {
if (i % 2 == 0) {
n = 0;
} else {
n = 1;
}
result = n + result;
}
} else {
System.out.println("Error!");
}
ps.append(result);
ps.flush();
ps.close();
} catch (IOException e) {
System.out.println(e);
}
}
}