Asp.Net页面使用UTF-8乱码解决方案
最近Asp.Net做一个项目,利用模版生文件aspx文件。模版是utf-8的,生成的文件当然也是utf-8的。但是执行起来中文全是乱码,这个问题把我折腾好几个小时。
我决方案是这样的web.config中加入
?Download download.txt
1 2 3 4 | <system.web> <globalization requestEncoding="utf-8" responseEncoding="utf-8" fileEncoding="utf-8" /> </system.web> |
其中的fileEncoding=”utf-8″ 是必需的,否则仍然是乱码。
将工程文件中的所有*.aspx,*.cs文件转成utf-8的。可以使用此工具:
UltraCodingSwitch.rar (466.0 KiB, 260 hits)
到此应该一切搞定了,因为asp.net默认的使用GB2312来解释生成HTML文件,已经通过上面的globalization设置过了。
但我犯一个相当低级的错误,由于我通过模板生成aspx文件的,那个保存生成文件的文件夹并未加入到工程中,所以上面的所有设置对我生成的工程文件无效。仍然使用默认GB2312来解析产生文件,所以还是乱码。知道了原因解决就容易了,将那个保存生成文件的文件夹加入工程,标准的方块字出现了,汗。

[...] Web开发中编码问题处理不好总是很头疼,特别与Ajax纠缠在一起时,更容易出乱。前一段时间做一个Asp.net项目时遇到的编码问题。Asp.Net页面使用UTF-8乱码解决方案,今天在做PHP的一个小程序时也遇到乱码问题。 [...]
汗。
楼主的精神值得我学习,我希望楼主要继续努力,多多出原创文章!
这篇文章文笔华丽,文字幽雅,通俗易懂,天才!
我刚刚开始自学ASP.NET!
占个位做笔记!