日期:2014-05-20  浏览次数:20576 次

求懂java的人解释这段代码主要是用来做什么用的?
try{
String chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
code = new String(org.apache.commons.codec.binary.Hex.encodeHex(code.getBytes("utf-8")));//此句含义
code = code.toLowerCase();
String ret = "";
char[] chs = new char[code.length()];
for(int i = 0; i < code.length(); i ++)//循环代码块的含义
{
int addx = i%62;
int c = (int)code.charAt(i);
int dx = chars.indexOf(c);
dx = dx + addx;
dx = dx%62;
chs[i] = chars.charAt(dx);
}
ret = new String(chs);
return ret;



------解决方案--------------------
没有上下文这东西干什么的都有可能

转码加密和什么的都可以的
------解决方案--------------------
code = new String(org.apache.commons.codec.binary.Hex.encodeHex(code.getBytes("utf-8")));//此句含义
对输入串按utf-8方式编码并获得其字节数组,再将每一个字节按顺序转换成16进制值表示,得到该hexadecimal string


for(int i = 0; i < code.length(); i ++)//循环代码块的含义
准备通过遍历该串对每一个字符进行处理
------解决方案--------------------
架包下载地址:
http://commons.apache.org/codec/download_codec.cgi

1、转换字符数组到16进制字符串

2、
Java code


//生成随机数,随机数包括字母和数字最多62位,比方说chars的值
            int addx = i%62;
            //取得指定位置的值转换为整形,因为char和int之间是可以互相转换的,这是用ascii编码来给char赋值 
            int c = (int)code.charAt(i);
            //首先把c转换为字符,然后查找相应的所在位置
            int dx = chars.indexOf(c);
            // 从chars字符串中从dx的位置往前移,每次移动一位
            dx = dx + addx;
            // 当移动到最后以为的时候就从0再开始
            dx = dx%62;
            // 赋值到chs[]
            chs[i] = chars.charAt(dx);

------解决方案--------------------
下载地址:
http://commons.apache.org/codec/


1、转换字符数组到16进制字符串。

2、
Java code

//生成随机数,随机数包括字母和数字最多62位,比方说chars的值
            int addx = i%62;
            //取得指定位置的值转换为整形,因为char和int之间是可以互相转换的,这是用ascii编码来给char赋值 
            int c = (int)code.charAt(i);
            //首先把c转换为字符,然后查找相应的所在位置
            int dx = chars.indexOf(c);
            // 从chars字符串中从dx的位置往前移,每次移动一位
            dx = dx + addx;
            // 当移动到最后以为的时候就从0再开始
            dx = dx%62;
            // 赋值到chs[]
            chs[i] = chars.charAt(dx);