`
文昌平蓝杰
  • 浏览: 55655 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

.net使用cookie产生乱码的问题

阅读更多

这个是我实际遇到的问题

 

在本地测试的时候是好好的,结果发布到iis上,读取出来的cookie成了乱码

 

一开始使用了一个非常傻的方式,就是把含有中文的cookie放到最后在存入,这个至少解决了一个问题,即不含有中文的cookie能够正常读取,可能是中文的乱码导致了cookie的字节读乱了

 

后来改进了,查找了网上的方法,也给你们粘贴上来,供大家参考

我看到的源地址,http://blog.csdn.net/mynewdays/article/details/16119161

为了防止这篇文章删掉,我给粘下来了。

下面是写入cookie的代码

[csharp] view plain copy
  1. HttpCookie cookie = new HttpCookie("username");  
  2.             cookie.Value = "张三,14,images/1.jpg";  
  3.             cookie.Expires = DateTime.Now.AddDays(1);  
  4.             Response.Cookies.Add(cookie);  


 

下面是读取cookie的代码

[csharp] view plain copy
  1. if (Request.Cookies["username"]!=null)  
  2.             {  
  3.                 string username = Request.Cookies["username"].Value;  
  4.                 Response.Write(username);  
  5.             }  


 

有时读取出来的cookie值中的中文部分可能是乱码,不管是有什么导致的,我们都可以通过编码进行解决

更改上面写入cookie的代码

[csharp] view plain copy
  1. HttpCookie cookie = new HttpCookie("username");  
  2.             cookie.Value = HttpUtility.UrlEncode("张三,14,images/1.jpg",Encoding.GetEncoding("UTF=8"));  
  3.             cookie.Expires = DateTime.Now.AddDays(1);  
  4.             Response.Cookies.Add(cookie);  


 

更改上面读取cookie的代码

[csharp] view plain copy
  1. if (Request.Cookies["username"]!=null)  
  2.            {  
  3.                string username =HttpUtility.UrlDecode(Request.Cookies["username"].Value,Encoding.GetEncoding("UTF-8"));  
  4.                Response.Write(username);  
  5.            }  

 

想这样,在存储和读取cookie的时候都使用utf8的方式,就不会再出现乱码了,不管是在服务器还是本地都行,试过了

分享到:
评论

相关推荐

    .NET中文乱码的解决方法分享.docx

    .NET中文乱码的解决方法分享 .NET中文乱码的解决方法是ASP.NET...同时,本文还提供了一些其他相关的解决方案,例如解决ASP.NET中的各种乱码问题、ASP.NET Core中的中文乱码问题、ASP.NET Cookie中的中文乱码问题等等。

    asp.net Cookie值中文乱码问题解决方法

    我们以asp.net为例,代码如下: 设置Cookie时: 代码如下: HttpCookie cookie = new HttpCookie(“name”, System.Web.HttpContext.Current.Server.UrlEncode(“软件开发网”)); Response.Cookies.Add(cookie);读取...

    解决Asp.net 读取cookie中保存的中文字符乱码问题

    cookie储存中文是会乱码的,在使用cookie储存中文的时候需要使用UrlEncode编码,同时读取cookie中的中文时需要使用功能UrlDecode解码。 正文 Cookie是保存在客户端硬盘或内存中的一小段文本信息,如网站、用户、会话...

    【ASP.NET编程知识】asp.net中的cookie使用介绍.docx

    本文将对 ASP.NET 中的 Cookie 使用进行介绍,包括 Cookie 的基本概念、操作、跨域设置、中文乱码问题解决方法等。 一、Cookie 的基本概念 Cookie 是一种小型文本文件,存储在客户端的浏览器中,由服务器生成并发...

    解决ASP.NET中的各种乱码问题总结

    总的来说,解决ASP.NET中的乱码问题,关键在于理解编码规则,确保文件编码与配置文件匹配,并使用适当的函数处理数据编码。对于AJAX请求,使用合适的工具和方法,如jQuery的 `$.ajax()` 和 `$.param()`,可以有效地...

    ASP.NET常见问题集锦.zip

    .net中中文乱码问题解决.txt ADO.NET 与 XML:双剑合壁,威力强大.doc ASP.NET HTTP 运行时.doc ASP.NET ViewState 初探.doc ASP.NET Web 方法中的 XmlElement 参数的功能.d ASP.NET 中 Cookie 的基本知识....

    在C#中可以使用CookieContainer 对象来保存登录后的Cookie信息

    - **编码问题**:在处理不同的编码格式(如gb2312与utf-8)时,需要注意编码转换的问题,以避免乱码出现。 - **安全性考虑**:对于敏感信息的传输,应该考虑使用HTTPS协议,以提高数据的安全性。 - **Cookie的生命...

    ASP.NET Night Words

    3.5 乱码问题 26 3.6 服务器端表单 28 3.7 html服务器控件 28 3.8 总结 31 第4章 visual studio 2008介绍 32 4.1 visual studio 2008网站 4.1 开发环境介绍 32 4.2 asp.net网站类型介绍 33 4.3 创建基于解决...

    关于有些Asp.net项目发布后出现网址乱码的解决方法

    当我输入网站域名,打开网页后url中会跟一段“乱码” 代码如下:http://www.XXXX.com/(S(jnzpixfqi5rge5rnl45vdb45))/index.aspx 最后在查看web.config时看到了一句 ”InProc” stateConnectionString=”tcpip ...

    【ASP.NET编程知识】ASP.NET MVC页面重定向简单介绍.docx

    - 对于URL中包含非ASCII字符(如汉字)的情况,需要使用Server.UrlEncode对查询字符串进行编码,以避免乱码问题。 总的来说,理解这些方法的工作原理及其优缺点对于优化ASP.NET MVC应用程序的性能和用户体验至关...

    cookie和表单实现基本登录并保存信息

    JSP页面内容介绍 index.jsp ...需要导入java.net.*包使用URLEncoder对象 将用户名和密码保存在cookie中,并设置它们的最长生存期限 userCenter.jsp 遍历客户端的cookie,使用URLDecoder解码获取用户信息

    asp.net下cookies的丢失和中文乱码

    ### ASP.NET 下 Cookies 的丢失与中文乱码问题详解 #### 一、Cookies丢失的原因及解决方案 在ASP.NET应用中,可能会遇到Cookies丢失的情况。这通常不是由于代码本身的错误导致的,而是由多种因素共同作用的结果。 ...

    爬虫系列 一次采集.NET WebForm网站的坎坷历程.docx

    7. **编码问题**:在处理URL和表单数据时,必须正确编码,防止出现乱码问题。 8. **动态加载内容**:现代网页可能包含JavaScript动态加载的内容,这可能需要使用像Selenium这样的工具来模拟浏览器行为。 通过上述...

    ASP.NET 中实现页面间的参数传递

    - 当传递包含中文或特殊字符的参数时,可能会出现乱码或参数截断的问题。可以通过修改Web.config中的编码设置或使用`Server.UrlEncode`和`Server.UrlDecode`方法进行编码和解码来解决。 #### 2. Application **...

    safari cookie设置中文失败的解决方法

    本文将深入探讨“Safari Cookie设置中文失败”的问题及其解决方案。 Cookie是一种在客户端和服务器之间传递信息的技术,通常用于保存用户状态、会话管理等。然而,Safari浏览器在处理包含非ASCII字符(如中文)的...

    asp cookie中文Javascript取得中文cookie

    ASP.NET中的Cookie管理和JavaScript操作Cookie是Web开发中的基础技能,特别是在处理中文字符时,需要特别注意编码问题。本文将深入探讨如何在ASP.NET环境下创建包含中文的Cookie,并使用JavaScript进行读取。 首先...

    ASP.NET与ASP互通COOKIES的一点经验

    但与此同时,而用ASP开发的旧系统面则临被整合,这时,面临一个问题:ASP与ASP.NET互相整合时,其中文COOKIES信息无法被互通共享,当使用ASP.NET写入中文COOKIES信息后,使用ASP进行读取,读出来的却是乱码,而非...

    asp.net采集页面上所有图像图片资源的具体方法

    此外,值得注意的是,下载过程中可能会遇到各种网络问题,例如网页可能因为各种原因(如需要cookie、编码问题、网页设计的特殊结构等)导致无法正确下载。在这种情况下,需要具体问题具体分析,有时可能需要根据...

Global site tag (gtag.js) - Google Analytics