引用
package com.java.unit;
import java.io.ByteArrayOutputStream;
public class StringUtil {
private static final String VERIABLY =
"abcdefghijklmnopqrstuvwxyz"+
"ABCDEFGHIJKLMNOPQRSTUVWXYZ"+
".-*_";
public static String urlEncode(
String s, String charset) throws Exception {
// abc
byte[] bytes =
s.getBytes(charset);
StringBuilder sb = new StringBuilder();
outer:
for(int i=0;i<bytes.length;i++) {
byte b = bytes[i];
if(b == ' ') {
sb.append('+');
continue outer;
}
for(int j=0;j<VERIABLY.length();j++) {
if(VERIABLY.charAt(j) == b) {
sb.append((char) b);
continue outer;
}
}
String hex = Integer.toHexString(b&0x000000ff);
if(hex.length() == 1) hex = '0'+hex;
hex = '%'+hex;
sb.append(hex);
}
return sb.toString();
}
public static String urlDecode(String s,String charset) throws Exception {
ByteArrayOutputStream out =
new ByteArrayOutputStream();
for(int i=0;i<s.length();i++) {
char c = s.charAt(i);
if(c == '%') {
// %f8
String hex = "";
hex += s.charAt(++i);
hex += s.charAt(++i);
int n = Integer.parseInt(hex, 16);
out.write(n);
} else {
if(VERIABLY.indexOf(c) != -1) {
out.write(c);
continue;
}
if('+' == c) {
out.write(' ');
continue;
}
}
}
byte[] data = out.toByteArray();
return new String(data,charset);
}
public static void main(String[] args) throws Exception {
String s = urlEncode("游戏","UTF-8");
System.out.println(s);
s = urlDecode("%e6%b8%b8%e6%88%8f", "UTF-8");
System.out.println(s);
}
}
分享到:
相关推荐
网上很多人在问怎么实现Web系统URL传输(表单提交)参数加密。例如:要进行一个用户帐号编辑,要传递用户的ID,URL如下:http://localhost/mysystem/editAccounts.aspx?ID=2 但又不想让别人知道这个用户的ID为2,恶意...
解决URL传输过程中得加密,解密问题,无论多少个参数,地址栏上显示的只有一个经过加密得URL,到达客户端再解密成多个参数值,同时可以解密字符串,加密字符串
微软自己本身的加密及解密对象及方法,方便供广大的开发人员的使用!
图19.3 使用ROT13算法加密解密数据 关 键技术 本实例实现时,主要是用Convert 类的ToChar 方法来获取单个字符的Unicode 编码,然后将字母的前13 个和后13 个对调,从而实现加密的功能。下面对Convert类的ToChar 方法...
宏杰文件夹加密软件介绍【概括介绍】 专业的、永久免费的文件加密软件、文件夹加密...4、在IE地址栏内输入关键子即可实现百度、谷歌快速搜索。 【更新日志】 宏杰文件夹加密 V2818 增加了功能强度大的浏览解密功能
2.base64分普通和迅雷地址 3.修改部分细节 4.修复进制BUG 密码助手v1.3 1.添加base64 2.修改部分细节 密码助手v1.24 1.修复莫斯解密BUG 密码助手v1.2.3 1.修复单表替换大写字母出错 密码助手v1.2.2 1.修复一BUG ...
实现了 清楚internet临时文件、Cookie的清除、游览器地址栏历史地址的清除、清楚表单自动完成历史记录、清楚自动密码历史记录、清除收藏夹中的内容、清除RAS自动拨号历史记录、清除系统临时文件夹、清空回收站、清除...
在Chrome的地址栏输入: chrome:// extensions / 。 点击加载已解压项目按钮,选择项目目录下的chrome_dir文件夹。 如何使用? 插件设置 点击Chrome右上角的插件按钮,固定MakeZero插件。如果熟悉插件使用可省略该...
免 SG11 加密,无需装置 SG11 扩展 全新 UI 界面 功用齐全 无 BUG 无后门 一切前台页面均可后台控制 含深色淡色主题设置 视频数据搜索支持联想搜索 幻灯片引荐位自定义设置,支持分类单独设置幻灯片 添加优化...
,加密解密,压缩解压缩,各种验证帮助类,图片,图片操作类,图片验证码,处理多媒体的公共类,处理枚举类,字符串,对象转换处理,帮助文档,序列化,异步线程,弹出消息类 ,数据展示控件绑定数据类,文件操作类,日历,日志,时间戳...
通过URLEncoder.encode加密地址栏url上得中文字符, 并可通过java.net.URLDecoder.decode(str, charset)解密中文
加密解密相关→EncryptUtils.java→Test MD2加密 encryptMD2ToString encryptMD2 MD5加密 encryptMD5ToString encryptMD5 SHA1加密 encryptSHA1ToString encryptSHA1 SHA224加密 encryptSHA224ToString encryptSHA...
课程包括十四个部分,分别介绍Qt的编程环境、窗体应用、控件应用、组件应用、文件操作、图形图像操作、多媒体应用、对系统操作、对注册表操作、数据库应用,网络应用开发、进程与线程应用、数据的加密与解密以及Qt...
语言:中文 (简体) 三倍速参悟佛曰的真理 快速加密解密佛曰的真理。点击地址栏旁的图标或者选中文字并右键即可一键加密/解密,省去搜索/打开网页的烦恼。调用keyfc提供的API, 加密器原作者蓝色的风之精灵。
实例225 使用ROT13加密解密文件 314 6.7 其他 315 实例226 获取窗口文本 315 实例227 判断文件是否正在被使用 316 实例228 在程序中调用.HLP文件 317 实例229 C#中实现文件拖放 317 实例230 文件比较 318 ...
2、在地址栏内输入http://您的网址/install按提示安装即可。 3、后台登陆地址:http://您的网址/admin/login.php ========== 功能说明: 1、各大B2C网站的返利。如:当当、凡客、乐淘、V+等网址返利,自动跟单...
加密解密文本(1.0).zip 加强执行(1.0).zip 加解密文本(1.1).zip 加载进度条v1.0(1.0).zip 加载进度条v2.0(1.0).zip 加密并压缩文件夹(1.0).zip 禁止多次运行程序(1.0).zip 进度下载模块(2.0).zip 禁止程序二...
29. QueryString 地址栏参数 30. RDLC直接打印帮助类 31. ResourceManager 32. RMB 33. SqlHelper 34. SQL语句拦截器 35. URL的操作类 36. VerifyCode 37. XML操作类 38. 上传下载 39. 二维码操作类 40. ...