2011-12-06 5 views
6

나는 이것에 관해 많은 주제를 가지고 있지만, 비록 그 중 많은 것들이 해결책을 설명 할 수는 없지만 봐도된다. 나는 char를 16 진수로 변환한다.16 진수 문자열을 다시 char 문자로 변환

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

질문 : 16 진수를 char로 변환하는 방법은 무엇입니까?

+0

당신은 16 진수 문자열에 대해 묻는거야? – Oded

+0

예, "문자열 16 진수"를 다시 – Min0

답변

18

당신이 시도 할 수 :

hex = hex.Substring(2); // To remove leading 0x 
int num = int.Parse(hex, NumberStyles.AllowHexSpecifier); 
char cnum = (char)num; 
+0

'FormatException' - "문자열 형식이 올바르지 않습니다"로 변환하고 싶습니다. – Oded

+0

고마워요 @Oded, 나는 "0x"를 이끌어내는 것을 보지 못했습니다, 나의 실수. – Marco

+0

감사합니다.이 솔루션은 완벽하게 작동합니다. – Min0

3
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); 
    } 
} 
관련 문제