3

私は、Apache Commons Lang StringEscapeUtilsクラス (特に、

escapeXml
unescapeXml
escapeHtml
unescapeHtml

メソッド)。.Net に相当するものはありますか? それとも、同じことを実現する完全に論理的な C# コードでしょうか?

4

4 に答える 4

4

HTML に System.Web を使用すると、次のようになります。

XML エスケープの場合、System.Security 名前空間でSecurityElement.Escape メソッドを使用できます。ただし、私が認識している unescape に相当するものはありません。<などのエンコードされた XML&を同等のものに置き換える独自のメソッドを作成する必要があります。エスケープ方法のリンクには、他の項目がリストされています。

于 2010-01-09T01:57:58.183 に答える
3
public static class StringEscapeUtils
{
    public static string EscapeXml(string unescaped)
    {
        return SecurityElement.Escape(unescaped);
    }

    public static string UnescapeXml(string escaped)
    {
        return escaped.Replace("&lt;", "<")
                      .Replace("&gt;", ">")
                      .Replace("&quot;", "\"")
                      .Replace("&apos;", "'")
                      .Replace("&amp;", "&");
    }

    public static string EscapeHtml(string unescaped)
    {
        return HttpUtility.HtmlEncode(unescaped);
    }

    public static string UnescapeHtml(string escaped)
    {
        return HttpUtility.HtmlDecode(escaped);
    }
}
于 2010-01-09T02:05:18.120 に答える
1

Html の置換には、 HtmlEncodeHtmlDecodeを使用できます。XML エスケープのオプションは、ここにあります。

于 2010-01-09T01:59:32.017 に答える
1

HttpServerUtilityクラスを確認してください

HttpServerUtility.HtmlEncode、HtmlDecode、UrlDecode など...

XML の場合:
System.Xml.XmlConvert
System.Security.SecurityElement.Escape

于 2010-01-09T01:59:36.027 に答える