JAVA文件加密解密

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

import java.io.File;

import java.io.FileInputStream;

import java.io.FileOutputStream;

/**

* 加密解密类

*

* @author shaohl

* @version 1.00

*/

public class filekey {

// static boolean debug =false ;

// 加密KEY不能随便改动

static final byte[] KEYVALUE = "6^)(9-p35@%3#4S!4S0)$Y%%^&5(j.&^&o(*0)$Y%!#O@*GpG@=+@j.&6^)(0-=+"

.getBytes();

static final int BUFFERLEN = 512;

public filekey() {

}

/**

* 对文件进行加密

*

* @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:\\Users\\Administrator\\Desktop\\java课设\\需要加密的文件.txt");

String newFile = new String("C:\\Users\\Administrator\\Desktop\\java课设\\加密之后.txt");

String oldFile1= new String("C:\\Users\\Administrator\\Desktop\\java课设\\加密之后.txt");

String newFile1= new String("C:\\Users\\Administrator\\Desktop\\java课设\\解密之后.txt");

encryptFile(oldFile, newFile);

decryptFile(oldFile1, newFile1);

System.out.println("ok");

} catch (Exception e) {

e.printStackTrace();

}

}

}

import java.awt.FlowLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JTextField;

//————————————窗体、、、——————————————————————、、

相关文档
最新文档