Что означает этот формат строки C #? - PullRequest
1 голос
/ 26 августа 2010

Из моего предыдущего вопроса Преобразование китайского иероглифа в Юникод я получил хороший ответ, но с некоторым кодом, которого я не понял:

Console.WriteLine("U+{0:x4}", (int)myChar);

Кто-нибудь может объяснить это?

Ответы [ 3 ]

5 голосов
/ 26 августа 2010
Console.WriteLine("U+{0:x4}", (int)myChar);

эквивалентно вызову:

Console.WriteLine("U+{0}", ((int)myChar).ToString("x4"));

В строке формата : указывает, что элемент должен отображаться в предоставленном формате.Часть x4 указывает, что целое число должно быть напечатано в шестнадцатеричной форме с использованием символов 4.Для получения дополнительной информации см. строки стандартного числового формата .

3 голосов
/ 26 августа 2010

0 указывает, какой позиционный аргумент заменить.x отображает шестнадцатеричное число, а 4 отображает четыре цифры.

Например, символ ȿ (LATIN SMALL LETTER S WITH SWASH TAIL, кодовая точка 575) равенпечатается как U+023F с 575 10 = 23F 16 .

1 голос
/ 26 августа 2010

Это просто создаст буквальную строку «U + 1234» ... теперь, если вы хотите преобразовать кодовую точку Юникода в символ, вы хотите Convert.ToChar (myChar)

http://msdn.microsoft.com/en-us/library/3hkfdkcx.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...