我正在从返回 html 友好的 ascii 代码而不是文本的 web 服务中读取数据。我正在尝试将其再次转换为 WinRT 应用程序的字符串,但我似乎找不到合适的解码器。
例如:
'
应该等于一个撇号。
我已经尝试过 htmldecode 和 urldecode,但它们不是我需要的。另外,我不知道我会得到什么,所以我不想硬编码任何字符。
谢谢你的帮助!
我正在从返回 html 友好的 ascii 代码而不是文本的 web 服务中读取数据。我正在尝试将其再次转换为 WinRT 应用程序的字符串,但我似乎找不到合适的解码器。
例如:
'
应该等于一个撇号。
我已经尝试过 htmldecode 和 urldecode,但它们不是我需要的。另外,我不知道我会得到什么,所以我不想硬编码任何字符。
谢谢你的帮助!
参考 System.Web 和使用:
HttpUtility.HtmlDecode("htmlcode");
好的,所以我有这段处理数字实体的代码。
Regex r = new Regex("&#[^;]+;");
str = r.Replace(str, delegate(Match match)
{
string value = match.Value.ToString().Replace("&#", "").Replace(";", "");
int asciiCode;
if (int.TryParse(value, out asciiCode))
{
return Convert.ToChar(asciiCode).ToString();
}
else
{
return value;
}
});
如果您说HttpUtility.HtmlDecode()
不能满足您的需要,您可能必须编写正则表达式或其他比较来循环遍历您的字符串,匹配HTML 代码表中 HTML 编号或 HTML 名称列中的值,以便您可以转换它到相应的符号。