a.aspx有以下代码
Response.Cookies("test").Value = "中国人"b.aspx有以下代码
response.write Request.Cookies("test").Value首先打开A.ASPX,然后打开B.ASPX
显示的居然是乱码,应该如何解决???
Response.ContentEncoding = Text.ASCIIEncoding.Unicode
Response.ContentEncoding = Text.ASCIIEncoding.Utf8
这两个都试过了,无效果
Response.Cookies("test").Value = "中国人"b.aspx有以下代码
response.write Request.Cookies("test").Value首先打开A.ASPX,然后打开B.ASPX
显示的居然是乱码,应该如何解决???
Response.ContentEncoding = Text.ASCIIEncoding.Unicode
Response.ContentEncoding = Text.ASCIIEncoding.Utf8
这两个都试过了,无效果
Response.Cookies("test").Value = Server.UrlEncode("中国人")b.aspx有以下代码
response.write Request.Cookies("test").Value首先打开A.ASPX,然后打开B.ASPX
这次显示的是空值了
COOKIES里的值为英文的时候是正常,就是中文不行
在当前页可以即赋值即取出来,中英文都正常
换另一页后只能取到英文的COOKIES,中文的要么变成乱码,用了urlencode后就是整个COOKIES不存在了
我正在安装中文版2003看看是不是英文系统的原因
TimeSpan ts = new TimeSpan(1, 0, 0);
string strEncryptName = "###CCC####";
HttpCookie CookieUserEncryptName = new HttpCookie("UserName");
CookieUserEncryptName.Value = strEncryptName;
CookieUserEncryptName.Expires = dt + ts;
Response.Cookies.Add(CookieUserEncryptName);读cookies if(Request.Cookies["UserName"] == null)
{
} else
{
tbUserName.Value = Request.Cookies["UserName"].Value.Trim();
}
类的代码是这样的:
Public Property AWSession(ByVal strKey As String) As String
Get
Dim s As String = ""
If Not Request.Cookies(strKey) Is Nothing Then
s = Request.Cookies(strKey).Value
End If
Return s
End Get
Set(ByVal value As String)
Request.Cookies.Remove(strKey)
Response.Cookies(strKey).Value = value
End Set
End Property
以上代码在使用英文时完全正常,传入的值为中文时就变成乱码了
如果用urlencode的话数据太长了,最多只能装下5个中文