Как мне избежать HTML Unicode в .net? - PullRequest
6 голосов
/ 14 февраля 2011

На веб-странице я получил текст u30ca \ u30ea \ u30a2.Это должно перевести на ナ タ リ ア.Я просто не знаю, как это сделать в .NET.Я попытался HttpUtility.HtmlDecode и когда это не удалось, я попытался HttpUtility.UrlDecode.Не повезло

1 Ответ

2 голосов
/ 14 февраля 2011

Хорошо, если ваша строка Escaped, вам нужно будет преобразовать строку вручную в Unicode .. или у меня есть лучший способ. JSON принимает символы Escaped Unicode и конвертирует их в обычные символы, поэтому попробуйте это ( JavaScriptSerializer в System.Web.Script.Serialization в System.Web.Extensions.dll):

string d = @"\u30ca\u30bf\u30ea\u30a2";
Console.WriteLine("Unicode Escaped:" + d);
JavaScriptSerializer jr = new JavaScriptSerializer();
string dt = jr.Deserialize<string>("\"" + d + "\"");
Console.WriteLine("Converted:" + dt);

и вывод:

Unicode Escaped: \u30ca\u30bf\u30ea\u30a2

Converted: ナタリア

<ч /> И если вы все еще хотите сделать это вручную, n кода. этот ответ с кодом на SO это то, что вы хотите:

Преобразование строки Юникода в экранированную строку ASCII

Я не хочу брать на себя ответственность за публикацию его кода.

...