gpt4 book ai didi

c# - 使用 HtmlDecode 或 Escape 解码字符串

转载 作者:数据小太阳 更新时间:2023-10-29 02:12:18 26 4
gpt4 key购买 nike

编辑 - 根据答案修改:

好的,这是我根据答案修改的内容:

这是字符串。

"November is Fruit's Fresh."    

这是我正在做的:

    static string EscapeCharacters(string txt)
{
string encodedTxt = HttpUtility.HtmlEncode(txt);
return HttpUtility.HtmlDecode(encodedTxt);
}

string _decodedTxt = EscapeCharacters("November is Fruit's Fresh.");

当它返回时,我仍然收到相同的文本 November is Fruit's Fresh.

结束编辑

我尝试使用 System.Web 中的 HttpUtility.HtmlDecode,也尝试使用 SecurityElement.Escape,但它没有正确转义任何内容。

所以我最终编写了自己的替换方法,如下所示:

    static string EscapeXMLCharacters(string txt)
{
string _txt = txt.Replace("&amp;", "&").Replace("&lt;", "<").Replace("&gt;", ">").Replace("&quot;", "\"").Replace("&apos;", "'").Replace("&#38;", "&").Replace("&#60;", "<").Replace("&#62;", ">").Replace("&#34;", "\\").Replace("&#39;", "'");
return _txt;
}

它确实适用于我的情况,但很难涵盖所有内容,在我的情况下,我有一些欧洲字符,如 í``(í)é (é ;)

是否有一个内置的实用方法可以处理任何特殊字符?

最佳答案

您可以使用HtmlEncode 对字符串进行编码,然后您可以使用HtmlDecode 返回原始值:

string x = "éí&";
string encoded = System.Web.HttpUtility.HtmlEncode(x);
Console.WriteLine(encoded); //&#233;&#237;&amp;

string decoded = System.Web.HttpUtility.HtmlDecode(encoded);
Console.WriteLine(decoded); //éí&

随着你的更新,你只需要解码字符串:

String decoded = System.Web.HttpUtility.HtmlDecode("November is Fruit&#39;s Fresh.");
Console.WriteLine(decoded); //November is Fruit's Fresh.

关于c# - 使用 HtmlDecode 或 Escape 解码字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19839078/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com