Преобразование строки в unicode-представление - программирование
Подтвердить что ты не робот

Преобразование строки в unicode-представление

Возможный дубликат:
Преобразование строк Unicode в экранированную строку ascii

Как преобразовать ä... в нечто вроде \u0131...?

есть ли какая-либо функция для этого?

p.s:

следующим образом: [извините @Kendall Frey: -)]

char a = 'ä';
string escape = "\\u" + ((int)a).ToString("X").PadLeft(4, '0');
4b9b3361

Ответ 1

Здесь используется функция преобразования char в escape-последовательность:

string GetEscapeSequence(char c)
{
    return "\\u" + ((int)c).ToString("X4");
}

Это не будет намного лучше, чем однострочный.

И нет, нет встроенной функции, насколько мне известно.

Ответ 2

Нет встроенной функции AFAIK. Вот одно довольно глупое решение, которое работает. Но Кендалл Фрей предоставил гораздо лучший вариант.

string GetUnicodeString(string s)
{
    StringBuilder sb = new StringBuilder();
    foreach (char c in s)
    {
        sb.Append("\\u");
        sb.Append(String.Format("{0:x4}", (int)c));
    }
    return sb.ToString();
}