高分放送--急求asp.net cookie 中文乱码问题

zhengyh5339 2009-07-03 02:05:43
我在登录页面用cookie 保存了用户名,但是一遇到汉字,登录了就成了乱码,我在网上找了相关的资料,试了结果还是没解决乱码这个问题,请大虾指点几招
我在配置文件中加了如下 :(还是乱码)
<globalization
requestEncoding="gb2312"
responseEncoding="gb2312"
/>
...全文
1419 38 打赏 收藏 转发到动态 举报
写回复
用AI写文章
38 条回复
切换为时间正序
请发表友善的回复…
发表回复
macaihong 2012-02-27
  • 打赏
  • 举报
回复
想知道这个问题是怎么解决
王树羽1 2011-05-10
  • 打赏
  • 举报
回复
写的时候 Server.UrlEncode 编码;
读的时候 Server.UrlDecode 解码;
这样就吗,没有任何问题了
倾城之恋 2011-04-06
  • 打赏
  • 举报
回复
关注中。。
jasondct 2009-07-06
  • 打赏
  • 举报
回复
我把我写的完整的代码给你, 你参考一下。
写入用的代码;------------------------------这是页面传值,cookie方法是一样的
Response.Redirect("../corporation/proList.aspx?ID=" + HttpUtility.UrlEncode("数字健康", Encoding.GetEncoding("GB2312")));
-----------------------------------------------------获得传值
NameValueCollection nv = HttpUtility.ParseQueryString(Request.Url.Query, Encoding.GetEncoding("GB2312"));
string proname = nv["ID"];
string sqlstr = "select * from btproduct where productname like'%" + proname + "%'";
---------------------------把里面的页面传值 换成cookie 就可以了。
zhengyh5339 2009-07-06
  • 打赏
  • 举报
回复
[Quote=引用 29 楼 jasondct 的回复:]
用的时候也要加密。这才能保证中文不乱码, 这些东西对中文支持的不好。
[/Quote]
HI,怎么加你为好友,还要通过身份证验证呀
scy251147 2009-07-03
  • 打赏
  • 举报
回复
这个和lz有一样的疑惑,不过ls的某个说出接法了
gjsimon 2009-07-03
  • 打赏
  • 举报
回复
编码问题,哈哈
大神来了丶 2009-07-03
  • 打赏
  • 举报
回复
帮顶
zhengyh5339 2009-07-03
  • 打赏
  • 举报
回复
还没有
http://www.uctube.cn/ 用1004天使 密码:1004天使 登录,你就可以看到,出现的乱码
jasondct 2009-07-03
  • 打赏
  • 举报
回复
用的时候也要加密。这才能保证中文不乱码, 这些东西对中文支持的不好。
jasondct 2009-07-03
  • 打赏
  • 举报
回复
解决了吗。 我写的代码不贴 了
你看看这个吧
http://www.czbin.cn/NET.COOKIES.CODE.001.php
jasondct 2009-07-03
  • 打赏
  • 举报
回复
刚才 测试发给我一些错误 。我要去改代码。
问题就是在
NameValueCollection nv = HttpUtility.ParseQueryString(Request .Cookies .Value .ToString (), Encoding.GetEncoding("GB2312"));
然后
name = nv["MyCookie"];

Request .Cookies .Value .ToString {} 把这个东西换上 应该可以。
zhengyh5339 2009-07-03
  • 打赏
  • 举报
回复
[Quote=引用 23 楼 jasondct 的回复:]
是的 那个是 页面传值 , 是空的。我已经把它换成 只能把 url 的页面值 换成 cookie
[/Quote]
换成cookie也得不到值,不知道为什么了
zhengyh5339 2009-07-03
  • 打赏
  • 举报
回复
反正就是不行
kgrass521 2009-07-03
  • 打赏
  • 举报
回复
存的时候 Server.UrlEncode 加玛 取的时候用 Server.UrlDecode 进行解码就不会错了
jasondct 2009-07-03
  • 打赏
  • 举报
回复
是的 那个是 页面传值 , 是空的。我已经把它换成 只能把 url 的页面值 换成 cookie
zhengyh5339 2009-07-03
  • 打赏
  • 举报
回复
我是在测试
name = Request.Cookies["MyCookie"].ToString();
NameValueCollection nv = HttpUtility.ParseQueryString(Request.Url.Query, System.Text.Encoding.GetEncoding("GB2312"));
name = nv["MyCookie"];
然后我让它输出就是没值,说明错了
jasondct 2009-07-03
  • 打赏
  • 举报
回复
你慢慢搞, 不要着急。写的时候仔细查一下和你的代码哪里不同,
zhengyh5339 2009-07-03
  • 打赏
  • 举报
回复
你有QQ吗?我加你,方便讨论
jasondct 2009-07-03
  • 打赏
  • 举报
回复
呵呵 我帮你写吧。
NameValueCollection nv = HttpUtility.ParseQueryString(Request.Url.Query, Encoding.GetEncoding("GB2312"));
--------------------------------------------------
Request .Cookies [].Value .ToString ();
----------------------------------------------------------
NameValueCollection nv = HttpUtility.ParseQueryString(Request .Cookies [].Value .ToString (), Encoding.GetEncoding("GB2312"));
------------------------------------------------------------
加载更多回复(18)

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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