Cur*_*urt 4 csv asp.net encoding
我有一个脚本在我的网页上循环遍历GridView,并从值中生成CSV文件.
报告了一个问题,其中符号显示编码如下:
Lorem & Ipsum
£100
Run Code Online (Sandbox Code Playgroud)
我已经使用了Server.HtmlDecode(),这已经修复了解码的值,修复了&符号,但是英镑符号现在显示了一个不同的符号:
Lorem & Ipsum
£100
Run Code Online (Sandbox Code Playgroud)
这是为什么,以及如何解决这个问题,以免Â出现角色?
我用来准备在CSV中使用的初始值的代码是:
Dim Str As String = String.Format("{0}", Server.HtmlDecode(value).Replace(",", "").Replace(Environment.NewLine, " ").Replace(Chr(10), " ").Replace(Chr(13), " "))
Run Code Online (Sandbox Code Playgroud)
这解码HTML,替换任何逗号和换行符.
das*_*ash 10
您的源字符串编码可能与输出编码不匹配.在写出客户端之前设置内容编码,以避免产生您观察到的结果的编码更改.
您可以通过设置Response.ContentEncoding来完成此操作; 例如:
Response.ContentEncoding = System.Text.Encoding.GetEncoding(1252);
Run Code Online (Sandbox Code Playgroud)
将为您提供Windows 1252代码页.您也可以使用UTF-8和ISO 8559-1,或者您想要的任何其他编码.
您还可以使用web.config中的globalization元素在整个应用程序中一致地设置它.
| 归档时间: |
|
| 查看次数: |
4435 次 |
| 最近记录: |