WtF*_*dgE 2 .net html encoding
我有一个字符串,看起来像:
À l'intérieur
Run Code Online (Sandbox Code Playgroud)
但它必须是:
À l'intérieur
Run Code Online (Sandbox Code Playgroud)
我尝试改变转换.我知道它被读作ASCII编码.所以我尝试使用代码:
ASCIIEncoding ASCII = new System.Text.ASCIIEncoding();
Byte[] BytesMessage = ASCII.GetBytes(Title);
Title = Encoding.UTF8.GetString(BytesMessage);
Run Code Online (Sandbox Code Playgroud)
我尝试在不同的编码之间切换,但它没有多大帮助.有没有办法来解决这个问题?
谢谢!
嗯,这实际上不是字符编码(例如ASCII或UTF-8),而是定义任意字符的转义序列的更高级协议 - 在这种情况下SGML作为HTML和XML的基础.
您可以使用HttpUtility类的HtmlDecode方法对其进行解码:
PS> Add-Type -AssemblyName system.web
PS> [web.httputility]::HtmlDecode("À l'intérieur")
À l'intérieur
Run Code Online (Sandbox Code Playgroud)
但是,此类驻留在System.Web命名空间中,因此可能无法立即在非ASP.NET项目中使用.
| 归档时间: |
|
| 查看次数: |
1309 次 |
| 最近记录: |