Преобразование шестнадцатеричной строки обратно в символ - PullRequest
7 голосов
/ 06 декабря 2011

Я знаю - есть много тем, касающихся этого, НО, хотя я просмотрел кучу из них, не мог найти решение .. Я конвертирую char в hex как это:

char c = i;
int unicode = c;
string hex = string.Format("0x{0:x4}", unicode);

Вопрос: как конвертировать гекс в char обратно?

Ответы [ 2 ]

20 голосов
/ 06 декабря 2011

Вы можете попробовать:

hex = hex.Substring(2); // To remove leading 0x
int num = int.Parse(hex, NumberStyles.AllowHexSpecifier);
char cnum = (char)num;
3 голосов
/ 06 декабря 2011
using System;
using System.Globalization;

class Sample {
    static void Main(){
        char c = 'あ';
        int unicode = c;
        string hex = string.Format("0x{0:x4}", unicode);
        Console.WriteLine(hex);
        unicode = int.Parse(hex.Substring(2), NumberStyles.HexNumber);
        c = (char)unicode;
        Console.WriteLine(c);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...