jsp中:
<body>
<p>测试北京电大首页输入参数中包含中文用户名的问题</p>
<%
String uri = RequestURI();
StringBuffer url = RequestURL();
String queryStr = QueryString();
String fullUrl = String() + "?" + queryStr;
String decodeStr=java.URLDecoder.decode(fullUrl, "UTF-8");//这个就是按照utf-8格式解密的方法
%>
<div><%=url%></div><br>
<p>输出:127.0.0.1:8000/test.jsp</p><br>
<br><br>
<div><%=uri%></div><br>
<p>输出:/test.jsp</p><br>
<br><br>
<div><%=queryStr%></div><br>
<p>输出:auth=yes&username=测试员111&onlines=1 </p><br>
<br><br>
<div><%=decodeStr%></div><br>
<p>输出:127.0.0.1:8000/test.jsp?auth=yes&username=测试员111&onlines=1</p><br>
<br><br>
</body>
LoginAction中:Url()!=null && Url().length()!=0){
String userName = Username();
String encodeUserName =  de(userName,"UTF-8");
response.Url()+"&username=" + encodeUserName + "&onlines=" + onlines);
}else{
response.sendRedirect("welcome.do");
}
java.URLEncoder
java.URLDecoder
java.URLEncoder和java.URLDecoder的使用2008-12-05 09:29import java.io.UnsupportedEncodingException;
public class TestCode {
public static void main(String[] args) {
String str="你好吗";
try {
//将 String 转换为 application/x-www-form-urlencoded MIME 格式
//使用指定的编码机制将字符串转换为 application/x-www-form-urlencoded 格式。
String codestr=de(str,"UTF-8");
System.out.println("codestr:"+codestr);
// 使用指定的编码机制对 application/x-www-form-urlencoded 字符串解码。
String decodeStr=java.URLDecoder.decode(codestr, "UTF-8");
System.out.println("decodestr:"+decodeStr);
str="你小子好嚣张呀?";
codestr=de(str,"gbk");
System.out.println("codestr:"+codestr);
decodeStr=java.URLDecoder.decode(codestr, "gbk");
System.out.println("decodestr:"+decodeStr);
str="你小子好帅呀!";
codestr=de(str,"gb2312");
System.out.println("codestr:"+codestr);
decodeStr=java.URLDecoder.decode(codestr, "gb2312");
System.out.println("decodestr:"+decodeStr);
str="Go,go,快点,车马上要走了!";
codestr=de(str,"gb18030");
System.out.println("codestr:"+codestr);
decodeStr=java.URLDecoder.decode(codestr, "gb18030");
System.out.println("decodestr:"+decodeStr);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
}
import java.URLEncoder;
import java.URLDecoder;
import java.io.*;
public class URL
{
public static void main(Str
ing args[])
{
try{
String enCode = de("www.ioby/default.jsp?name=哈哈", "UTF-8");
System.out.println(enCode);
String deCode = URLDecoder.decode(enCode, "UTF-8");
System.out.println(deCode);
}
catch(UnsupportedEncodingException e)
{
}
}
}
---------------
/**
* 将文件名中的汉字转为UTF8编码的串,以便下载时能正确显示另存的文件名
*
* @param s 原文件名
* @return 重新编码后的文件名
*/
public static String toUtf8String(String s) {
StringBuffer sb = new StringBuffer();
for (int i = 0; i < s.length(); i++) {
在线url网址编码解码char c = s.charAt(i);
if (c >= 0 && c <= 255) {
sb.append(c);
} else {
byte[] b;
try {
b = String.valueOf(c).getBytes("utf-8");
} catch (Exception ex) {
System.out.println(ex);
b = new byte[0];
}
for (int j = 0; j < b.length; j++) {
int k = b[j];
if (k < 0)
k += 256;
sb.append("%" + HexString(k).toUpperCase());
}
}
}
String();
}
=======================================================================
1.加密。
  Response.Redirect("DetailInfo.aspx?id=" + Convert.ToBase64String(System.Text.Encoding.Default.GetBytes("sp10006")).Replace("+","%2B"));
  2.解密。
  string ID = System.Text.Encoding.Default.GetString(Convert.FromBase64String(Request.QueryString["id"].ToString().Replace("%2B","+")));

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。