java对文件进行加密解密操作
接口类:
package JFFileEncrypt;
import java.security.Key;
import java.security.NoSuchAlgorithmException;
import java.security.SecureRandom;
import javax.crypto.KeyGenerator;
import javax.crypto.spec.SecretKeySpec;
/**
* 功能:对文件加密解密操作
* @author jiangfeng
*
*/
public interface FileEncryptInterface
{
/**
* 加密算法
* @param key
* @param FileName
* @return
*/
public boolean DESEncrypt(Key key, String FileName);
/**
* 解密算法
* @param FileName
* @param key
* @return
*/
public boolean DESDecrypt(String FileName, Key key);
/**
* 自定义一个key
*/
public Key getKey(String keyRule);
/**
* 第二种产生key的方法
* @return
*/
public Key getKey2();
}
接口实现类:
package JFFileEncrypt;
import java.io.BufferedWriter;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.security.InvalidKeyException;
import java.security.Key;
import java.security.NoSuchAlgorithmException;
import java.security.SecureRandom;
import javax.crypto.BadPaddingException;
import javax.crypto.Cipher;
import javax.crypto.IllegalBlockSizeException;
import javax.crypto.KeyGenerator;
import javax.crypto.NoSuchPaddingException;
import javax.crypto.spec.SecretKeySpec;
/**
* 功能:对文件加密解密操作
* @author jiangfeng
*
*/
public class FileEncryptImpal implements FileEncryptInterface
{
/**
* 功能:加密文件
*/
public boolean DESEncrypt(Key key, String FileName)
{
boolean result = false;
StringBuffer sb = null;
try
{
/*
* Cipher类无构造方法,调用getInstance()方法将所请求转换的名称传递给它 参数为 转换的名称,例如
* DES/C
相关文档:
/**
* 创建一个新的文件
* @param relativePath 相对路径
* @param fileName 文件名
* @return
* @throws IOException
*/
public File cre ......
计算一下时间!我开始学习JAVA编程已经两个月了,每节课都是在学习一下理论的东西。感觉上没啥用处一样,所以自己着手做一些简单的JAVA编程。第一次编程肯定没法跟大师们比较了,但是这也见证了我努力的结果!
import java.awt.*;
import java.awt.event.*;
import java.util.Date;
import javax.swing.JPassword ......
猪年无聊,改了一个代码,有点D版那个意思,把WAP PUSH的C#代码改到了JAVA
原来出处:
http://www.codeproject.com/cs/internet/wappush.asp
改过后的代码在下面,程序好像可以输出了WAPPUSH的结构化的东西,但是,没有在CMPP协议上测试通过。
共7个文件:
package com.wap.wbxml;
public class Runner {
&nbs ......
1.引言
Java I/O系统是建立在数据流概念之上的,而在UNIX/Linux中有一个类似的概念,就是管道,它具有将一个程序的输出当作另一个程序的输入的能力。在Java中,可以使用管道流进行线程之间的通信,输入流和输出流必须相连接,这样的通信有别于一般的Shared Data通信,其不需要一个共享的数据空间。
2.相关类及其关系
1) ......
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Random;
public class ShuffleTest {
public static void main(String args[]) {
String simpsons[ ......