20175236 JAVA MyCP(课下作业)
具体描述:
编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数:
- java MyCP -tx XXX1.txt XXX2.bin 用来把文本文件(内容为十进制数字)转化为二进制文件
- java MyCP -xt XXX1.bin XXX2.txt 用来二进制文件把转化为文本文件(内容为十进制数字)
提交测试代码和运行结果截图,加上学号水印,提交码云代码链接。
内容:
将文本文件转化为二进制文件,其中文本文件中的内容为十进制数字,步骤为:首先FileReader的read()方法获取对应的十进制数字,然后调用Integer.toBinaryString(十进制字符)来将十进制转为二进制,最后使用FileWriter的write()方法来保存得到的二进制。
public static void dumptx(FileReader reader, FileWriter writer) {
try (FileReader input = reader; FileWriter output = writer) {
char[] data = new char[];
while((input.read(data)) != -) {
int da=(int)data[];
String str1="";
String str=Integer.toBinaryString(da);
for(int i=;i<;i++){
if(i<(-str.length()))str1+='';
}
str1+=str;
output.write(str1, , );
output.write(" ");
}
}catch (IOException e) {
e.printStackTrace();
}
}
将二进制文件转化为文本文件,其中文本文件中的内容为十进制数字,步骤为:首先FileReader的read()方法获取对应的8位二进制数字,然后调用Integer.valueOf(8位二进制字符串,2)方法将二进制转为十进制,最后使用FileWriter的write()方法来保存得到的十进制内容。
public static void dumpxt(FileReader reader, FileWriter writer) {
try (FileReader input = reader; FileWriter output = writer) {
char[] data = new char[];
char []ch = new char[];
while((input.read(data)) != -) {
String str="";
input.read();
for(int i=;i<;i++){
str+=data[i];
}
int ten=Integer.valueOf(str,);
ch[]=(char)ten;
output.write(ch, , );
output.write(" ");
}
}catch (IOException e) {
e.printStackTrace();
}
}
使用主函数根据输入的参数来调用不同的方法,若是输入“java MyCP -tx XXX1.txt XXX2.bin”调用dumptx方法把文本文件(内容为十进制数字)转化为二进制文件;若是输入“java MyCP -xt XXX1.bin XXX2.txt”调用dumpxt方法把二进制文件把转化为文本文件(内容为十进制数字)。
public static void main(String[] args) throws IOException {
Scanner scan=new Scanner(System.in);
String str=scan.nextLine();
String[]Nstr=str.split(" ");
if(Nstr[].equals("-tx")){
FileReader reader = new FileReader(Nstr[]);
FileWriter writer = new FileWriter(Nstr[]);
dumptx(reader, writer);
}
if(Nstr[].equals("-xt")){
FileReader reader = new FileReader(Nstr[]);
FileWriter writer = new FileWriter(Nstr[]);
dumpxt(reader, writer);
}
}
运行结果如下所示:

:
码云链接:https://gitee.com/wffloveaxy
20175236 JAVA MyCP(课下作业)的更多相关文章
- MyCP(课下作业,必做)
作业要求 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2.bin 用来把文本文件(内容为 ...
- MyCP课下作业
任务详情 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2.bin 用来把文本文件(内容为 ...
- 20175316 盛茂淞 MyCP(课下作业,必做)
题目要求 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2.bin 用来把文本文件(内容为 ...
- 20175221 MyCP(课下作业,必做)
MyCP(课下作业,必做) 任务详情 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: - java MyCP -tx XXX1.txt XXX2 ...
- 20175333曹雅坤MyCP(课下作业,必做)
MyCP(课下作业,必做) 要求 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2.bin ...
- MyCP(课下作业,必做)
MyCP(课下作业,必做) 要求 编写MyCP.java 实现类似Linux下cp XXX1 XXX2 的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2.bi ...
- 20175212课下作业 MyCP
20175212课下作业 MyCP 要求 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2 ...
- 必做课下作业MyCP
20175227张雪莹 2018-2019-2 <Java程序设计> 必做课下作业MyCP 要求 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支 ...
- 20175314薛勐 MyCP(课下作业,必做)
MyCP(课下作业,必做) 要求 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2.bin ...
- MyCP(课下作业,必做)- 20175218
MyCP(课下作业,必做) 1.任务详情 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2 ...
随机推荐
- GDB程序调试
GDB使用流程 1.编译生成可执行文件: gcc -g tst.c -o tst2.启动GDB gdb tst3. 在main 函数处设置断点 break main4. 运行程序 run GDB 命令 ...
- Some notes in Stanford CS106A(2)
1.Local variable(local) ex. int i = 0; factorial(i); the "i" outside the method factorial( ...
- React native中使用XMLHttpRequest请求数据
一.代码 import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, View } from ' ...
- ES6学习重难点总结(持续更新)
Symbol 1.Symbol.iterator Symbol.iterator指向对象的默认遍历器方法: String.prototype[Symbol.iterator] //ƒ [Symbol. ...
- ISAPI筛选器及对ASP源文件的保护
ISAPI筛选器及对ASP源文件的保护 2009-04-21 01:45:57 标签:ISAPI 筛选器 ASP 源文件 保护 摘要:本文介绍了利用ISAPI筛选器保护ASP源文件的方法,并给出一个实 ...
- Android Studio 入口程序的设置方法
在src -> main中 ,打开 AndroidManifest.xml 这个文件 下面这里有两个窗口,如果要想把哪个窗口设置成入口窗体,只要把下面红色的放在这个节点中就可以了 <act ...
- android studio连接真机大概问题
首先,确定手机Android的版本(最好用统一版本) 版本一样的话错误会少一点... 手机打开开发者选项(每个手机不同,百度可查) 开发者选项中打开USB调试 点击OK,可以进入Android mon ...
- SOCKET.IO 的用法 系统API,
原文:http://www.cnblogs.com/xiezhengcai/p/3956401.html 1. 服务端 io.on('connection',function(socket)); 监听 ...
- 【学习】C++多态机制
多态:静态(早绑定) 在编译阶段和链接就能确定功能调用的函数. 动态(晚绑定) 在程序运行时根据需要的功能确定调用的函数. 实现晚绑定就要定义虚函数,使用虚函数则会用到基类指针. 继承基类虚成 ...
- 跨域访问技术CORS(Cross-Origin Resource Sharing)简介
为什么要用CORS? CORS是一个W3C标准,全称是"跨域资源共享"(Cross-origin resource sharing). 它允许浏览器向跨源服务器,发出XMLHttp ...