Как лучше всего преобразовать значение Int в соответствующий Char в Utf16, учитывая, что Int находится в диапазоне допустимых значений?
Ответы:
(char)myint;
например:
Console.WriteLine("(char)122 is {0}", (char)122);
дает:
(char) 122 это z
Console.WriteLine((char)49 == '1');
Отдам Истину . Как и будет. char c = (char)49; string s = "1two3"; Console.WriteLine(c == s[0]);
Использование этого приведения совершенно нормально. Ваше объяснение не дает убедительного примера того, что это не работает. Кроме того, Console.WriteLine((char)49 == 1);
это ложь, что, по сути, делает ваш комментарий необоснованным.
int i = 65;
char c = Convert.ToChar(i);
Хотя это не совсем ответ на поставленный вопрос, но если вам нужен или вы можете принять конечный результат в виде строки, вы также можете использовать
string s = Char.ConvertFromUtf32(56);
который при необходимости предоставит вам суррогатные пары UTF-16, защищая вас, если вы находитесь за пределами BMP .