ASP.NET Server.HtmlEncode不会编码€

时间:2010-05-19 12:08:26

标签: c# asp.net html-encode

我知道欧元货币符号(€)在HTML中编码为€,但System.Web.HttpUtility.HtmlEncode("€")根本不编码。有谁知道为什么会这样?

1 个答案:

答案 0 :(得分:6)

HttpUtility.HtmlEncode仅对HTML中“保留”的字符进行编码。对于该列表,请参阅此页面上的第一个表:http://www.w3schools.com/tags/ref_entities.asp

换句话说,只有那些可能与HTML的基本结构冲突的字符(例如<,>,“等)。只要编码,就不能编码其他字符 正确识别传输的字节(例如,通过使用和声明UTF-8)。