求懂java的人解释这段代码主要是用来做什么用的?

fsy123456accp 2012-08-14 11:41:49
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;

...全文
141 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zqfddqr 2012-08-14
  • 打赏
  • 举报
回复
没有上下文这东西干什么的都有可能

转码加密和什么的都可以的
fsy123456accp 2012-08-14
  • 打赏
  • 举报
回复
没有人啊 自己顶一下!
Sammie 2012-08-14
  • 打赏
  • 举报
回复
下载地址:
http://commons.apache.org/codec/


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

2、

//生成随机数,随机数包括字母和数字最多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);



回过一次,咋没了呢。
Sammie 2012-08-14
  • 打赏
  • 举报
回复
架包下载地址:
http://commons.apache.org/codec/download_codec.cgi

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

2、


//生成随机数,随机数包括字母和数字最多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);
dracularking 2012-08-14
  • 打赏
  • 举报
回复
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 ++)//循环代码块的含义
准备通过遍历该串对每一个字符进行处理

50,523

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧