我有一个怀疑,我什至不确定这是一种什么样的怀疑。我只是解释一下。
我需要将 C# Windows 窗体中可能包含任何类型字符的字符串转换为 HTML 格式。我需要这个来在我的程序中使用现有工具,所以它必须完全像这样。
问题是 HtmlEncode
函数没有按预期工作。我找到了一个完全符合我需要的网站。该网站是:http://web.forret.com/tools/html.asp .
在这个网站上,当我发布字符串时:
"® € ì Ù Ω µ drokluží zlůd paněž Ř ř common text"
并将其转换为 html 我得到:
"® € ì Ù Ω µ drokluží zlůd paněž Ř ř common text"
我需要在 C# 中获得完全相同的内容。注意,当我询问转换时,原文变为:
"® **€ ì Ù Ω µ drokluží zlůd paněž Ř ř common text**"
所以我相信预转换是在最终转换之前完成的。我只是找不到哪个。
注意 HTMLEncode
产生
"® € ì Ù Ω µ drokluží zlůd paněž Ř ř common text"
它甚至不转换某些符号,例如 €
Ω
或外文 zlůd paněž Ř ř**
。
我已经为此浪费了大量时间,因此非常感谢任何形式的帮助。我希望这个问题足够清楚。
最佳答案
您正在查看以下代码:
public string HTMLEncodeSpecialChars(string text)
{
System.Text.StringBuilder sb = new System.Text.StringBuilder();
foreach (char c in text){
if(c>127) // chars not in ASCII
sb.Append(String.Format("&#{0};",(int)c));
else
sb.Append(c);
}
return sb.ToString();
}
关于C# 将具有多种类型字符的字符串编码为 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17144732/