加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 生成CSV时显示为££的英镑符号

发布时间:2020-12-16 07:28:02 所属栏目:asp.Net 来源:网络整理
导读:我有一个脚本在我的网页上循环遍历GridView,并从值中生成CSV文件. 报告了一个问题,其中符号显示编码如下: Lorem amp; Ipsum#163;100 我已经使用了Server.HtmlDecode(),这修复了解码后的值,修复了符号,但是井号现在显示的是不同的符号: Lorem Ipsum?£100
我有一个脚本在我的网页上循环遍历GridView,并从值中生成CSV文件.

报告了一个问题,其中符号显示编码如下:

Lorem & Ipsum
£100

我已经使用了Server.HtmlDecode(),这修复了解码后的值,修复了&符号,但是井号现在显示的是不同的符号:

Lorem & Ipsum
?£100

为什么会这样,我该如何解决这个问题,以免?字符出现?

我用来准备在CSV中使用的初始值的代码是:

Dim Str As String = String.Format("{0}",Server.HtmlDecode(value).Replace(",","").Replace(Environment.NewLine," ").Replace(Chr(10)," ").Replace(Chr(13)," "))

这解码HTML,替换任何逗号和换行符.

解决方法

您的源字符串编码可能与输出编码不匹配.在写出客户端之前设置内容编码,以避免产生您观察到的结果的编码更改.

您可以通过设置Response.ContentEncoding来完成此操作;例如:

Response.ContentEncoding = System.Text.Encoding.GetEncoding(1252);

将为您提供Windows 1252代码页.您也可以使用UTF-8和ISO 8559-1,或者您想要的任何其他编码.

您还可以使用web.config中的globalization元素在整个应用程序中一致地设置它.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读