一、任务详情:

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

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

提交测试代码和运行结果截图,加上学号水印,提交码云代码链接。

二、任务准备:

1.十进制转成二进制: Integer.toBinaryString(int i)

2.二进制转十进制: Integer.valueOf("0101",2).toString()

3.十进制转化为二进制的方法 Integer.toBinaryString(int i)

注意:转化的二进制以字符串的形式返回

查看一个数的二进制上某一位是0还是1的方法:

①屏蔽法

num & (1<<index)) >> index(判断数字num的二进制上第index为是1还是0)

②利用String的charAt方法来查看某一位的ASCII值

Integer.toBinaryString(num)//先将num转化为二进制

ASCII =(int)tmp2.charAt(index)//如ASCII=47,则这一位为0; 如ASCII=48,则这一位为1

三、任务代码(十进制转二进制):

import java.io.*;
import java.*;
public class MyCP{
public static void main(String[] args) throws IOException {
String filepath = "C:\\Users\\LV\\Desktop\\十进制.txt";
String s =dataInputStream(filepath);
FileOutputStream fps = new FileOutputStream("C:\\Users\\LV\\Desktop\\二进制.txt");
fps.write(s.getBytes());
fps.close();
}
public static String dataInputStream(String filepath) throws IOException {
File file = new File(filepath);
DataInputStream dps = new DataInputStream(new FileInputStream(file));
StringBuilder byData = new StringBuilder();
byte bt = 0;
for(int i=0;i<file.length();i++) {
bt = dps.readByte();
String str = Integer.toBinaryString(bt);
if(str.length() == 1) {
str = "0"+str;
}
byData.append(str.toUpperCase());
}
return byData.toString();
}
}

四、运行结果截图:

五、参考资料:

https://blog.csdn.net/sofuzi/article/details/80686487

20175213吕正宏 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. MyCP课下作业

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

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

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

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

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

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

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

  7. 必做课下作业MyCP

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

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

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

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

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

随机推荐

  1. python安装media报错

    Try https://pypi.python.org/pypi/setuptools easy_install LEE 我后来,依次在Python2.7中装了 numpy-1.7.0-win32-s ...

  2. TCL 引用同目录下其他脚本文件--source

    方法一: source [file join [file dirname [info script]] Export_inp_by_loadstep.tcl] 方法二: source [file jo ...

  3. C# 如何获取SQL Server 中指定数据表的所有字段名和字段类型

    如何获取指定数据表的所有字段名和字段类型.SqlConnection.GetSchema方法有2个重载形式,获取指定数据表的所有字段名和字段类型的秘密就在GetSchema (String, Stri ...

  4. sort简单用法

    -u 去重## 查看文件内容cat test_sort.txt ## sort -u 去重cat test_sort.txt |sort -u----------------------------- ...

  5. getOrCreateEnvironment()方法源码探究

    该方法目的是创建一个环境对象,并且根据环境类型,自动判断是创建web环境对象,还是标准非web环境对象. 首先该方法源于prepareEnvironment准备环境: 然后进入该方法源码: 可以发现: ...

  6. Dell Inspiron 620 / Vostro 260 BIOS 开启 AHCI 模式

    1.Dell Vostro 260 台式机,WIN7 旗舰版   2.登陆 DELL 官方支持站点,获取 MS-A10.exe 安装文件   3.从网络中获取 AMIBCP.exe 工具,双击打开此程 ...

  7. docker18.09.5 Dockerfile文件编写

    Dockerfile命令详解(超全版本)  https://www.cnblogs.com/dazhoushuoceshi/p/7066041.html 案例1 dockerfile文件内容: FRO ...

  8. 将项目打成jar包执行 在liunx上执行 java -xx.jar

    一:普通maven java项目 项目目录 pom.xml <?xml version="1.0" encoding="UTF-8"?> <p ...

  9. c#字符串to/from文本文档IO示例

    写入文本文档 class Program { static void Main(String[] args) { //写入string数组,每个string一行 string[] lines = { ...

  10. flutter 入口文件配置路由+加载页面

    入口文件配置路由 1.路由信息 -- 加载页面 ,通常用于显示新的内容或者广告,加载完成之后进入主页面 -- 主页面 /app 2.配置页面  main.dart main.dart // main ...