C # /. NET - Метод преобразования кодов символов в эквивалентные символы - PullRequest
1 голос
/ 03 октября 2009

После извлечения фрагмента текста в моем приложении я мог бы получить строку, подобную этой:

"More kitchen supplies for the people"

Который простым текстом будет:

"More kitchen supplies for the people"

Есть ли компонент / метод в .NET, который я могу использовать, чтобы "обработать" строку в ее текстовом эквиваленте?

Я могу предположить, что обычный текст ascii в целом не содержит ни странного юникода, ни странных алфавитов. Просто кажется, что нормальные знаки, такие как ', ", | и т. Д., Представлены в виде кодов символов.

РЕДАКТИРОВАТЬ: Я думаю, я должен заметить, что речь идет о разработке .NET для Windows рабочего стола. По-видимому, есть способы сделать это только для ASP.NET, и я не осознавал, что такие простые операции могут быть ограничены конкретными платформами .NET.

Ответы [ 2 ]

8 голосов
/ 03 октября 2009

Метод System.Web.HttpUtility.HtmlDecode может обработать это:

(пример powershell v2)

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

Надеюсь, это поможет,

-Oisin

0 голосов
/ 03 октября 2009

Если вы знаете, что коды ASCII, вы можете использовать следующее для преобразования каждого маленького числа & 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];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...