您的位置:首页 > 其它

简单的对图片文件进行加密解密

2011-10-09 12:08 911 查看
package com.beijing.lebo.util.image;

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

/**
* 图片加密解密工具类
*
* @author Administrator
*/
public class ImageLock {

/**
* @param args
*            测试主方法
* @throws IOException
*/
public static void main(String[] args) throws IOException {
lockImage("C:/1.png", "C:/2.png", 111111);
unLockImage("C:/2.png", "C:/3.png", 111111);
}

/**
*
* @param file_path
*            待加密的图片路径
* @param save_path
*            加密后的图片路径
* @param lock_num
*            加密密钥
* @throws IOException
*/
public static void lockImage(String file_path, String save_path,
int lock_num) throws IOException {
File soure = new File(file_path);
File save = new File(save_path);
lockImage(soure, save, lock_num);
}

/**
*
* @param file_path
*            待加密的图片文件
* @param save_path
*            加密后的图片文件
* @param lock_num
*            加密密钥
* @throws IOException
*/
public static void lockImage(File soure_file, File save_file, int lock_num)
throws IOException {
FileInputStream fis = new FileInputStream(soure_file);
FileOutputStream fos = new FileOutputStream(save_file);
int b = 0;
while ((b = fis.read()) != -1) {
fos.write(b - lock_num);
fos.flush();
}
fos.close();
fis.close();
System.out.println("加密完成");
}

/**
*
* @param file_path
*            待解密的图片路径
* @param save_path
*            解密后的图片路径
* @param unlock_num
*            解密密钥
* @throws IOException
*/
public static void unLockImage(String file_path, String save_path,
int unlock_num) throws IOException {
File soure = new File(file_path);
File save = new File(save_path);
unLockImage(soure, save, unlock_num);
}

/**
*
* @param file_path
*            待解密的图片文件
* @param save_path
*            解密后的图片文件
* @param unlock_num
*            解密密钥
* @throws IOException
*/
public static void unLockImage(File soure_file, File save_file,
int unlock_num) throws IOException {
FileInputStream fis = new FileInputStream(soure_file);
FileOutputStream fos = new FileOutputStream(save_file);
int b = 0;
while ((b = fis.read()) != -1) {
fos.write(b + unlock_num);
fos.flush();
}
fos.close();
fis.close();
System.out.println("解密完成");
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐