MyCP

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

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

截图

代码截图

十进制

二进制

代码

import java.io.*;

public class MyCP {
public static void main(String[] args) throws IOException {
//输入十进制文本
String file = "E:/IDEA/IDEA各种源文件/MyCP/shijinzhi.txt";
String s = dataInputStream(file);
//得到的二进制数并存成文本
FileOutputStream txt= new FileOutputStream("E:/IDEA/IDEA各种源文件/MyCP/erjinzhi.txt");
txt.write(s.getBytes());
txt.close();
} public static String dataInputStream(String file) throws IOException {
//字节流:InputStream 输入数据
File Sfile = new File(file);
DataInputStream Binary = new DataInputStream(new FileInputStream(Sfile));
StringBuilder newdata = new StringBuilder();
byte b = 0;
for (int i = 0; i < Sfile.length(); i++) {//返回一个字符串二进制的无符号整数
b = Binary.readByte();//按照字节读取
String str = Integer.toBinaryString(b);
newdata.append(str);
}
return newdata.toString();//toString() 方法返回此对象本身(它已经是一个字符串)。
}
}

相关知识

IOException

throws IOException是Java中的throws语句。

throws是方法可能抛出异常的声明。(用在声明方法时,表示该方法可能要抛出异常)

语法:(修饰符)(方法名)([参数列表])[throws(异常类)]{......}

public void doA(int a) throws Exception1,Exception3{......}

字节流:输入输出数据

Java语言定义了许多类专门负责各种方式的输入或者输出,这些类都被放在java.io包中。其中,

所有输入流类都是抽象类InputStream(字节输入流),或者抽象类Reader(字符输入流)的子类;

而所有输出流都是抽象类OutputStream(字节输出流)或者Writer(字符输出流)的子类。

InputStream类是字节输入流的抽象类,是所有字节输入流的父类,InputStream类具有层次结构如下图所示;

java中的字符是Unicode编码的,是双字节的。InputStream是用来处理字节的,在处理字符文本时很不方便。Java为字符文本的输入提供了专门的一套类Reader。Reader类是字符输入流的抽象类,所有字符输入流的实现都是它的子类。

输出流OutputStream类是字节输入流的抽象类,此抽象类表示输出字节流的所有类的超类。

出现的问题

定义的文件名已经被使用,出现错误

解决方法:

如代码所示,更换文件名即可。随意起名“Sfile”

代码托管

参考资料

Java中IO流,输入输出流概述与总结

课下作业MyCP的分析的更多相关文章

  1. 20175212课下作业 MyCP

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

  2. 必做课下作业MyCP

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

  3. 课下作业——MyCP

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

  4. 20175201课下作业 MyCP

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

  5. 课堂练习&课下作业----用户场景分析

    典型用户1 ·小明---一名普通大学生生 名字 小明 性别.年龄 男,19岁 职业 大学生 收入 无 知识层次和能力 石家庄铁道大学学生,善于交际. 生活/工作情况 成绩优异,各方面技能突出 动机,目 ...

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

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

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

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

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

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

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

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

随机推荐

  1. 微信小程序 canvas 文字自动换行

    Page({ drawCanvas: function(ctx) {// 地址 ctx.setFontSize() ctx.setFillStyle('#9E7240') ctx.textAlign= ...

  2. 学习axios

    axios({ method: 'post', url: '/user/12345', data: { firstName: 'Fred', lastName: 'Flintstone' } }) . ...

  3. 小米平板8.0以上系统如何不用root激活xposed框架的流程

    在大多使用室的引流,或业务操作中,基本上都需要使用安卓的强大XPOSED框架,近来我们使用室购来了一批新的小米平板8.0以上系统,基本上都都是基于7.0以上系统版本,基本上都不能够刷入ROOT的su权 ...

  4. 深入理解group by 语句的执行顺序 from→where→group by→select(含聚合函数)

    由于之前没有对group by 语句的执行顺序(执行原理)做深入的了解,所以导致在实际应用过程中出现了一些问题.举个简单的粟子,比如一个表testA中的所有数据如下图: 我现在想从testA中查询us ...

  5. MySQL系统变量sql_safe_updates总结

    MySQL系统变量sql_safe_updates总结   在MySQL中,系统变量sql_safe_updates是个非常有意思的系统变量,在Oracle和SQL Server中都没有见过这样的参数 ...

  6. sql声明变量,及if -else语句、while语句的用法

    --声明变量,同时为变量赋值 declare @n print @n --单独使用一条语句为变量复制 print @n print @n --通过set赋值与select复制的区别 select @n ...

  7. C语言实现将日期、时间保存到文本文件中

    今天突然兴起,看来一下C语言的文件操作,以前在学习的时候,总是一带而过,觉得没有什么用处:但是现在看来,还真的没有什么用处,最后,我现在还有用到,当然这只是我的个人认为,并不能说明什么,在此我将自己写 ...

  8. shader高级纹理学习总结

    最近看了shader的高级纹理 做个总结 复习! shader迟早是要拿下的

  9. SQL练习题题目

    基本语法************************************************************************************************ ...

  10. MyCP(课下作业)

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