参考这个问题的公认答案:ASP.NET - What Characters does Server.HtmlEncode Encode Encode into Named Character Entities
HtmlEncode
这里引用了源代码。我对以下几行有疑问:
if ((ch >= '\x00a0') && (ch < 'Ā'))
{
output.Write("&#");
output.Write(ch.ToString(NumberFormatInfo.InvariantInfo));
output.Write(';');
}
基本上,这会将所有字符从
(ASCII 代码 127) 转换为 ÿ (ANSI 代码 255) 到其实体编码表示 ( <ansicode>)。
但是,所有 ansi 代码高于 255 的字符都按原样写入输出。
有谁知道这种 ANSI 127 - 255 编码背后的原理?有一个网页看起来有点傻,在 utf-8 中,源代码看起来像
"Søk:"
代替
"Søk:"
(“Søk”是挪威语的“搜索”)。