對文件的加密解密

package com.test.jiami;


import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;


public class Encrypt {
public static void main(String[] args) throws IOException {
/*
* 寫一個文件編寫加解密的程序 Encrypt.java,
* 該程序給文件進行加密,加密方法是,對文件中每一
* 個字節進行一些位取反操作;解密與加密一樣,
* 對已加密的文件再進行一次位取反操作
*/
// jiaMi("D:\\aa.jpg");
jieMi("D:\\aa.jpg");
}
public static void jiaMi(String name) throws IOException{
File f1=new File(name);
File f2=new File(name+1);

FileInputStream fis=new FileInputStream(f1);
FileOutputStream fos=new FileOutputStream(f2);
byte[] datas=new byte[5];
while(true){
int readCount = fis.read(datas);
if(readCount==-1){
break;
}else{
for(int i=0;i<readCount;i++){
datas[i]=(byte)~datas[i];
}
fos.write(datas,0,readCount);
}
}
fis.close();
fos.close();
f1.delete();
f2.renameTo(f1);
}
public static void jieMi(String name) throws IOException{
File f1=new File(name);
File f2=new File(name+1);

FileInputStream fis=new FileInputStream(f1);
FileOutputStream fos=new FileOutputStream(f2);

byte[] datas=new byte[5];
while(true){
int readCount = fis.read(datas);
if(readCount==-1){
break;
}else{
for(int i=0;i<readCount;i++){
datas[i]=(byte)~datas[i];
}
fos.write(datas,0,readCount);
}
}
fis.close();
fos.close();
f1.delete();
f2.renameTo(f1);
}
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章