C#里面:
cookie直接保存中文会出现乱码现象,但使用HttpUtility.UrlEncode对存值和取值时处理下就不会出现乱码。
然后问题出来了!
当满足一系列条件时,必须把多个cookie的值存入数据库的表里面。
使用HttpUtility.UrlEncode后,存入数据库依然不是正常的中文!
如:%25e9%2582%25ae%25e5%25af%2584
这就是几个中文进行HttpUtility.UrlEncode后,存进数据库的值。请教各位大虾如何解决?

解决方案 »

  1.   

    /写入cookies时    HttpCookie cookie = new HttpCookie("bbslogin");
        System.Text.Encoding enc = System.Text.Encoding.GetEncoding("gb2312");
        cookie["userid"] = HttpUtility.UrlEncode(userid, enc);
         cookie["userpassword"] = HttpUtility.UrlEncode(a_userpassword,enc);//读取cookies时
    t=获取的中文cookies值;
     System.Text.Encoding enc = System.Text.Encoding.GetEncoding("gb2312");
      userid = HttpUtility.UrlDecode(cookie["userid"], enc);
      userpassword = HttpUtility.UrlDecode(cookie["userpassword"].ToString(), enc);这样就解决了,以后用的时候注意一下。
      

  2.   

    额,好久没有搞C#了,转到asp和php了,看问题,应该和编码有关吧哎....
      

  3.   

    呵呵   貌似LZ自己说的不是很清楚。编码后解码:在存储到数据库之前进行解码操作。
    Encode  --  Decode