博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
课后作业2:编写一个文件加解密程序,通过命令行完成加解密工作
阅读量:4912 次
发布时间:2019-06-11

本文共 1758 字,大约阅读时间需要 5 分钟。

package wenjianyuliu;import java.io.File;import java.io.InputStream;import java.io.OutputStream;import java.io.FileInputStream;import java.io.FileOutputStream;//编写一个文件加解密程序,通过命令行完成加解密工作public class FileCode { private static final int numOfEncAndDec=0x99;//加密解密密钥 private static int dataOfFile=0;//文件字节内容 public static void main(String[] args) {  File srcFile=new File("E:\\新建文件夹\\poem.txt");//初始化文件  File encFile=new File("E:\\新建文件夹\\poem1.txt"); //加密文件  File decFile=new File("E:\\新建文件夹\\poem2.txt");  //解密文件    try {   //EncFile(srcFile,encFile);  //加密操作   //DecFile(encFile,decFile);//解密操作          EncFile(srcFile,decFile);  //加密操作

 

DecFile(decFile,encFile);  }catch(Exception e) {   e.printStackTrace();  } } private static void EncFile(File srcFile,File encFile)throws Exception{  if(!srcFile.exists()) {   System.out.println("source file not exixt");   }  if(!encFile.exists()) {   System.out.println("encrypt file created");   encFile.createNewFile();//若无加密文件,新建一个加密文件  }  InputStream fis=new FileInputStream(srcFile);  OutputStream fos=new FileOutputStream(encFile);    while((dataOfFile=fis.read())>-1) {
//当读到文件内容时 fos.write(dataOfFile^numOfEncAndDec);//将读出的内容加密后写入 } fis.close(); fos.flush(); fos.close(); } private static void DecFile(File encFile,File decFile)throws Exception{ if(!encFile.exists()) { System.out.println("encrypt file not exixt"); } if(!decFile.exists()) { System.out.println("decrypt file created"); decFile.createNewFile(); } InputStream fis=new FileInputStream(encFile); OutputStream fos=new FileOutputStream(decFile); while((dataOfFile=fis.read())>-1) { fos.write(dataOfFile^numOfEncAndDec); } fis.close(); fos.flush(); fos.close(); }}

 

 

转载于:https://www.cnblogs.com/zzstdruan1707-4/p/9979609.html

你可能感兴趣的文章
[Swift通天遁地]三、手势与图表-(6)创建包含三条折线的线性图表
查看>>
[Swift]LeetCode13. 罗马数字转整数 | Roman to Integer
查看>>
OpenGL学习笔记2017/8/29
查看>>
实验吧web加了料的报错注入
查看>>
字符窜转对象
查看>>
6、Linux 基础(二)
查看>>
Letter Combinations of a Phone Number
查看>>
C#动态操作DataTable(新增行、列、查询行、列等)
查看>>
Slim 微型框架的使用
查看>>
vs链接错误集合及解决方案
查看>>
高程5.4 RegExp类型
查看>>
[LeetCode]Min Stack
查看>>
nyist 673 悟空的难题
查看>>
Windows store app Settings 的 应用 ( viewmodel + windows.storage)
查看>>
第二次结对编程作业——毕设导师智能匹配
查看>>
mysql中获取时间的函数
查看>>
深入云存储系统Swift核心组件:Ring数据结构及构建、重平衡操作
查看>>
BZOJ 3563 DZY Loves Chinese
查看>>
POJ 3278 Catch That Cow
查看>>
mac 安装wget
查看>>