如何确定字符串是否已在C#中以编程方式编码?
让我们举例如字符串:
<p>test</p>
Run Code Online (Sandbox Code Playgroud)
我想让我的逻辑理解它已被编码的这个值..任何想法?谢谢
Fré*_*idi 51
您可以使用HttpUtility.HtmlDecode()来解码字符串,然后将结果与原始字符串进行比较.如果它们不同,原始字符串可能已被编码(至少,例程中发现了要解码的内容):
public bool IsHtmlEncoded(string text)
{
return (HttpUtility.HtmlDecode(text) != text);
}
Run Code Online (Sandbox Code Playgroud)
严格来说,这是不可能的.字符串包含的内容实际上可能是预期的文本,其编码版本可能是&lt;p&gt;test&lt;/p&gt;
.
您可以在字符串中查找HTML实体,并对其进行解码,直到没有剩余,但以这种方式解码数据会有风险,因为它假定事情可能不正确.
归档时间: |
|
查看次数: |
16814 次 |
最近记录: |