C#/。NET - 将字符代码转换为等效字符的方法

时间:2009-10-03 16:16:35

标签: c# .net winapi character-encoding

在我的应用程序中提取一段文本后,我可能会得到一个这样的字符串:

"More kitchen supplies for the people"

原文如下:

"More kitchen supplies for the people"

.NET中是否有一个组件/方法可以用来将字符串“处理”成纯文本等价物?

我能够假定常规的ascii文本,没有奇怪的unicode或奇怪的字母。似乎正常的符号如',',|等作为字符代码提供。

编辑:我想我应该注意这是关于用于Windows桌面开发的.NET。显然有一些方法只针对ASP.NET执行此操作,我没有意识到像这样的简单操作可能仅限于特定的.NET平台。

2 个答案:

答案 0 :(得分:8)

System.Web.HttpUtility.HtmlDecode方法可以处理:

(powershell v2示例)

ps> add-type -an system.web
ps> [system.web.httputility]::HtmlDecode(""")
"
ps>

希望这有帮助,

-Oisin

答案 1 :(得分:0)

如果您知道代码是ASCII,则可以使用以下内容转换每个little& x22数字。

public char Convert(string data) {
  data = data.SubString(1);  // Lose the &
  var num = Int32.Parse(data, NumberStyles.Hex | NumberStyles.AllowHexSpecifier);
  var chars = Encoding.ASCII.GetChars(new byte[] { (byte)num });
  return chars[0];
}