资源简介
输入自定义的KEY和路径,加密!
在MAIN方法里有例子
代码片段和文件信息
package com.test;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
/**
* 加密解密类
*
* @author
* @version 1.00
*/
public class Test {
// static boolean debug =false ;
// 加密KEY不能随便改动
static final byte[] KEYVALUE = “11111111111111111111“
.getBytes();
static final int BUFFERLEN = 512;
public Test() {
}
/**
* 对文件进行加密
*
* @param String
* oldFile 原始要加密的文件
* @param String
* newFile 加密后的文件
* @return
*/
public static void encryptFile(String oldFile String newFile)
throws Exception {
FileInputStream in = new FileInputStream(oldFile);
File file = new File(newFile);
if (!file.exists())
file.createNewFile();
FileOutputStream out = new FileOutputStream(file);
int c pos keylen;
pos = 0;
keylen = KEYVALUE.length;
byte buffer[] = new byte[BUFFERLEN];
while ((c = in.read(buffer)) != -1) {
for (int i = 0; i < c; i++) {
buffer[i] ^= KEYVALUE[pos];
out.write(buffer[i]);
pos++;
if (pos == keylen)
pos = 0;
}
}
in.close();
out.close();
}
/**
* 对文件进行解密
*
* @param String
* oldFile 原始要解密的文件
* @param String
* newFile 解密后的文件
* @return
*/
public static void decryptFile(String oldFile String newFile)
throws Exception {
FileInputStream in = new FileInputStream(oldFile);
File file = new File(newFile);
if (!file.exists())
file.createNewFile();
FileOutputStream out = new FileOutputStream(file);
int c pos keylen;
pos = 0;
keylen = KEYVALUE.length;
byte buffer[] = new byte[BUFFERLEN];
while ((c = in.read(buffer)) != -1) {
for (int i = 0; i < c; i++) {
buffer[i] ^= KEYVALUE[pos];
out.write(buffer[i]);
pos++;
if (pos == keylen)
pos = 0;
}
}
in.close();
out.close();
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
// debug =false ;
String oldFile = new String(“c:/test.doc“);
String newFile = new String(“c:/file2.doc“);
String file3 = new String(“c:/file3.doc“);
encryptFile(oldFile newFile);
decryptFile(newFile file3);
System.out.println(“ok“);
} catch (Exception e) {
e.printStackTrace();
}
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 31232 2010-08-09 21:55 file2.doc
文件 2425 2010-08-09 22:40 Test.java
----------- --------- ---------- ----- ----
33657 2
- 上一篇:二维矩形装箱算法--二叉树--java实现
- 下一篇:jsp+mysql火车订票系统
相关资源
- 二维矩形装箱算法--二叉树--java实现
- Java 2 实用教程第五版课本代码
- 编译原理 电梯模拟程序java版
- Java 电子相片管理程序
- opentsdb-java-client-master.zip
- 基于java web的作业提交与批阅系统
- 基于javaweb的在线图书销售系统JavaWe
- JavaWeb设计五子棋游戏设计与开发系统
- java网络抓包实验报告
- Java编写日历面板代码及调用 Eclipse可
- java web新闻发表页面
- BP神经网络JAVA实现源码含两套训练测
- 一个小小的JAVA多线程程序
- java打猎射击游戏
- sun java程序员认证考试题库{2019最新版
-
SuperMap iob
jects Java SQL查询中的分组查 - Java项目经验,里面有六个项目经验
- java版成语消消乐
- myeclipse编写的学生信息管理系统,j
- jstl-impl-1.2.jar和jstl-api-1.2.jar
- Head-First-Java(中文第二版全部源代码
- Java POIExcel模板 Excel带有下拉框的模板
- java写的服务端,能够与客户端进行通
- java+ajax+mysql实现省市县三级联动
- Head First Java源代码 (中文第2版) (
- java项目简历
- JAVA课程设计(生日卡片)
- 金山打字通java打字模板
- 探花交友2020学习资料-Java大数据实战
- java实现人脸注册及人脸登录!
评论
共有 条评论