蓝墨云班课 编写MyCP.java

要求:

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

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

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

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

我将主函数定义为MYDC;

然后通过调用输入文档,将其中的数转2进制到输出文档中,类代码如下:

public static void dumpToTwo(InputStream src, OutputStream dest)

throws IOException {

try (InputStream input = src; OutputStream output = dest) {

byte[] data = new byte[1];

int length;

while ((length = input.read(data)) != -1) {

String str = Integer.toBinaryString((data[0]&0xFF)+0x100).substring(1);

data[0] = Byte.parseByte(str);

output.write(data, 0, length);

}

}

}

调用输入文档,将其中的数转十进制到输出文档中,类代码如下:

public static void dumpToTen(InputStream src, OutputStream dest)

throws IOException {

try (InputStream input = src; OutputStream output = dest) {

byte[] data = new byte[1];

int length;

while ((length = input.read(data)) != -1) {

data[0] = Byte.parseByte(String.valueOf(data[0]),10);

output.write(data, 0, length);

}

}

}

这是我的完整代码:

/**

* Created by zx on 17-6-1.

*/

import java.io.*;

class MyCP{

public static void dumpToTwo(InputStream src, OutputStream dest)

throws IOException {

try (InputStream input = src; OutputStream output = dest) {

byte[] data = new byte[1];

int length;

while ((length = input.read(data)) != -1) {

String str = Integer.toBinaryString((data[0]&0xFF)+0x100).substring(1);

data[0] = Byte.parseByte(str);

output.write(data, 0, length);

}

}

}

public static void dumpToTen(InputStream src, OutputStream dest)

throws IOException {

try (InputStream input = src; OutputStream output = dest) {

byte[] data = new byte[1];

int length;

while ((length = input.read(data)) != -1) {

data[0] = Byte.parseByte(String.valueOf(data[0]),10);

output.write(data, 0, length);

}

}

}

public static void main(String[] args) {

FileInputStream fis = null;

FileOutputStream fos = null;

try {

fis = new FileInputStream("/home/zx/代码托管/shuru.java");

fos = new FileOutputStream("/home/zx/代码托管/shuchu.java");

dumpToTen(fis, fos);

}catch(Exception e) {

System.out.println(e);

}

}

}

截图如下:

linux java -cp lt; .txt_补交 20155202 蓝墨云班课 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能...相关推荐

  1. 补交20145226蓝墨云班课 -- MyCP

    蓝墨云班课 -- MyCP.java 具体描述: 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt ...

  2. 补交20145226蓝墨云班课 -- MyOD

    蓝墨云班课 -- MyOD.java 具体描述: 编写MyOD.java 用java MyOD XXX实现Linux下od -tx -tc XXX的功能. 提交测试代码和运行结果截图,加上学号水印,提 ...

  3. 补交20145226蓝墨云班课 -- Arrays和String单元测试

    蓝墨云班课 -- Arrays和String单元测试 具体描述: 在IDEA中以TDD的方式对String类和Arrays类进行学习 测试相关方法的正常,错误和边界情况 String类 charAt ...

  4. 补交20145226蓝墨云班课 -- 正则表达式作业

    蓝墨云班课 -- 正则表达式作业 具体描述: 参考老师在博客园的 Intellj IDEA 简易教程中的单元测试,以TDD的放式学习云班课中"正则表达式简易教程.pdf",在此贴出 ...

  5. 补交20145226蓝墨云班课 -- 后缀表达式

    蓝墨云班课 -- 后缀表达式 具体描述: 后缀表达式 内容: ###基本概念 后缀表达式,也叫逆波兰式,不包含括号,运算符放在两个运算对象的后面,所有的计算按运算符出现的顺序,严格从左向右进行(不再考 ...

  6. 蓝墨云班课计算机测试题答案,20155317 第一周蓝墨云班课考题

    20155317 2016-2017-2 蓝墨云班课考题第2周 上周蓝墨云班课考题 1 ( 单选题 | 1 分) Amdahl定律说明,我们对系统的某个部分做出重大改进,可以显著获得一个系统的加速比. ...

  7. 20155317 2016-2017-2 蓝墨云班课考题第2周

    20155317 2016-2017-2 蓝墨云班课考题第2周 三: 1.用gcc -g编译vi输入的代码 2.在main函数中设置一个行断点 3.在main函数增加一个空循环,循环次数为自己学号后4 ...

  8. 20155317 第一周蓝墨云班课考题

    20155317 2016-2017-2 蓝墨云班课考题第2周 上周蓝墨云班课考题 1 ( 单选题 | 1 分) Amdahl定律说明,我们对系统的某个部分做出重大改进,可以显著获得一个系统的加速比. ...

  9. 20172305 2018-2019-1 蓝墨云班课实验--哈夫曼树的编码

    20172305 2018-2019-1 蓝墨云班课实验--哈夫曼树的编码 实验要求 设有字符集:S={a,b,c,d,e,f,g,h,i,j,k,l,m,n.o.p.q,r,s,t,u,v,w,x, ...

最新文章

  1. Java的新项目学成在线笔记-day13(九)
  2. .NET WinForm中给DataGridView自定义ToolTip并设置ToolTip的样式
  3. Linux系统二进制bin文件操作的10种方法
  4. look look C#7
  5. CSS3 FlexBox布局入门简析
  6. entity framework框架生成摘要文档为空(没有元数据文档可用)的bug解决方案
  7. OSError: [Errno 22] Invalid argument: ‘
  8. JPA与EJB3的关系
  9. JFreeChart自定义拆线图
  10. iOS 提交app到iTunes Connect,显示构建版本“+”号的小技巧/ 选择版本提交 无“+”号 问题/Xcode 上传成功但iTunes 不显示上传的版本的问题
  11. Android程序员英文介绍,安卓程序员面试英文自我介绍
  12. hive 常用函数操作
  13. 计算机网络 专有名词英文缩写
  14. Android应用内存管理机制
  15. 彻底理解confidence interval和credible interval
  16. linux服务器运维管理学习
  17. 机器学习学习笔记(3)——量纲与无量纲,标准化、归一化、正则化
  18. css绝对定位如何居中?css绝对定位居中的四种实现方法-web前端教程
  19. 海康工业相机网口相机丢包问题解决方法
  20. 前端必学——用JavaScript实现电商图片放大镜效果(附代码)

热门文章

  1. Ubuntu系统下搭建svn服务器(及设置SVN提交必须输入注释)
  2. influxDB快速入门实战教程
  3. 小姜的功能安全学习日记
  4. 3DsMax游戏模型制作技巧,掌握这些技术你也能接私活啦
  5. 对于rpx的理解和使用
  6. python足球联赛赛程_足球联赛赛程表生成
  7. java集合中取最大值_Java后台通过Collections获取list集合中最大数,最小数代码
  8. LIN雨量传感器:PCB拆解及LIN数据协议解析
  9. 烂笔头笔记:favicon配置不是所有浏览器都兼容
  10. 商业智能BI全解,一文让你明白才是商业智能(BI)