作业要求

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

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

思路

  • 从指定文件读取字符串型变量,根据命令行输入的“-tx”或“-xt”判断,将十进制转为二进制或将二进制转为十进制,再输出。

产品代码

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);
}
}
}

测试结果

  • java MyCP -tx XXX1.txt XXX2.bin

  • java MyCP -xt XXX1.bin XXX2.txt

遇到的问题

1.问题:当在idea中运行的时候,出现了这个问题。



解决方案:询问同学发现也有这种情况,具体原因是什么不清楚,但是在虚拟机中可以运行。

2.问题:第一次在虚拟机中运行出现了无法加载主类。

解决方案:最开始把编译出来的文件和txt与bin分开了,帮他们放一起时又可以了。

代码托管

MyCP(课下作业,必做)的更多相关文章

  1. 20175316 盛茂淞 MyCP(课下作业,必做)

    题目要求 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2.bin 用来把文本文件(内容为 ...

  2. MyCP课下作业

    任务详情 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2.bin 用来把文本文件(内容为 ...

  3. 20175221 MyCP(课下作业,必做)

    MyCP(课下作业,必做) 任务详情 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: - java MyCP -tx XXX1.txt XXX2 ...

  4. 20175333曹雅坤MyCP(课下作业,必做)

    MyCP(课下作业,必做) 要求 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2.bin ...

  5. MyCP(课下作业,必做)

    MyCP(课下作业,必做) 要求 编写MyCP.java 实现类似Linux下cp XXX1 XXX2 的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2.bi ...

  6. 必做课下作业MyCP

    20175227张雪莹 2018-2019-2 <Java程序设计> 必做课下作业MyCP 要求 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支 ...

  7. 20175314薛勐 MyCP(课下作业,必做)

    MyCP(课下作业,必做) 要求 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2.bin ...

  8. MyCP(课下作业,必做)- 20175218

    MyCP(课下作业,必做) 1.任务详情 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2 ...

  9. 20175325 MyCP (课下作业,必做)

    20175325 MyCP (课下作业,必做) 一.目录: 题目 设计思路 运行结果 码云链接 二.题目 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两 ...

随机推荐

  1. eclipse复制工作空间配置

    eclipse复制工作空间配置   eclipse复制工作空间配置 总结一下,复制工作空间配置步骤如下: 1 使用eclipse新建workspace. 2 将新建的workspace下的.metad ...

  2. Solr7.1---简单搜索

    本文环境基于上一节. and搜索 两种用法: apple AND banana +apple +banana [+是一元操作符,要求求后面的查询部分必需在文档中出现.AND是二元操作符,要求其左右两端 ...

  3. MySQL开启远程连接的方法

    默认情况下,mysql只允许本地登录,如果要开启远程连接,则需要修改/etc/mysql/my.conf文件. 一.修改/etc/mysql/my.conf找到bind-address = 127.0 ...

  4. Linux 文件管理权限

    这里呢我们需要掌握的是两个命令 chmod 和 chgrp和chown 视频地址:http://www.tudou.com/listplay/pA16IH7T_Sc/LuyHbR_7Yp0.html ...

  5. JAVA记录-redis缓存机制介绍(二)

    Redis 集合(Set) Redis的Set是string类型的无序集合.集合成员是唯一的,这就意味着集合中不能出现重复的数据. Redis 中 集合是通过哈希表实现的,所以添加,删除,查找的复杂度 ...

  6. java基础面试题常出现(一)

    1.”==“和equals方法的区别? 1.   ==操作符,对于基本数据类型变量,比较的是两个值是否相等,而对于引用类型,比较的是引用的内存的首地址,即引用同一个对象.1 Obeject的equal ...

  7. C#字体与Rectangle简单对应关系

    在1920*1080 无缩放分辨率下,Rectangle要至少是字体的2倍+2才不会被遮挡.

  8. 18. Spring Boot 、注册Servlet三大组件Servlet、Filter、Listener

    由于SpringBoot默认是以jar包的方式启动嵌入式的Servlet容器来启动SpringBoot的web应用,没有web.xml文件 public class MyServlet extends ...

  9. java实现网页验证码

    Servlet: package cn.bdqn.servlet; import javax.imageio.ImageIO; import javax.servlet.ServletExceptio ...

  10. buildroot构建项目(三)--- u-boot 2017.11 适配开发板修改 1

    当前虽然编译成功了,但是对于我们自己的目标板并不太适用.还得做一系列得修改. 一.lds 文件分析 u-boot 中最重要得链接文件即是,u-boot.lds.我们可以查看我们编译出来得 u-boot ...