文件加密和解密

来源:互联网 发布:手机淘宝怎么提高信用 编辑:程序博客网 时间:2024/05/22 12:26
/*加密方法 * 方法:1)将每一个字符转换为ascII码 * 2)每一个ascII变为原来的2倍并转换为十六进制 * 3)将所有字符串连接为一个字符创 * 4)每隔两个字符插入一个字符串“wn” 
 * */public String  encry(String str){
//str 为要加密的内容//定义字符型数组长度为str的长度char[] ch = new char[str.length()];//定义变量并初始化String str2 ="";//循环给数组ch赋值for(int i = 0;i<(str.length());i++){ch[i] = str.charAt(i);//将数组ch中的字符装换长int型int num = ch[i];//将所有的数据都变为原来的2倍int numberstr = num*2;//System.out.println(numberstr);System.out.println(str);//将十进制数装换为十六进制数String str1 = Integer.toHexString(numberstr);//输出十六进制的数据System.out.println(str1);//将转换后的字符连接成字符串str2 += str1;////输出字符串//System.out.println(str2);//定义插入的字符串String nstr = "wn";//插入字符串(每隔两个字符插入一组字符串)str2 += nstr;}//输出字符串//System.out.println(str2);//返回str2变量的内容return str2;}/*解密方法 * 方法:1)将字符串中的wn去除 * 2)将字符串拆分成多个字符串,拆分后每两个字符组成一个字符串 * 3)将字符串转化为十进制的数据 * 4)每一个数据除以2 * 5)将数据转换为对应的字符 * 6)将字符连接为字符串 *  * */public String decipher(String str){String str2 = "";//将字符串拆分为数组String[] str3= str.split("wn");//System.out.println(str3[0]);for(int i = 0;i<str3.length;i++){//System.out.println(str3[i].toString());//将十六进制转换为十进制int num = Integer.parseInt(str3[i], 16);//将数据除以2 ,算出字符的ASCII代码num = num/2;//将ascII代码转换为字符char ch = (char)num;System.out.println(ch);//将字符连接成字符串str2+=ch;}//放回字符串return str2;}

0 0
原创粉丝点击