2012-06-27 34 views
6

Tôi có một chuỗi đại diện cho giá trị hex của một char, chẳng hạn như: "0x6d4b". Làm thế nào tôi có thể nhận được nhân vật nó đại diện như một char?Chuỗi JAVA đến char

String c = "0x6d4b"; 
char m = ??? 
+0

Cố gắng có một cái nhìn vào đó http://stackoverflow.com/questions/923863/converting-a-string- to-hexadecimal-in-java –

Trả lời

-1

Hãy thử điều này,

String s ="0x6d4b" ; 
     char[] c = s.toCharArray(); 

     for (char cc : c){ 

      System.out.print(cc); 
     } 
+0

-1 Đây không phải là những gì OP là sau. –

+0

bạn đã thử nghiệm nó trước khi đăng vì nó không hoạt động. và theo cách của nó không phải là những gì được hỏi. Vì vậy, -1 –

+0

@MohammadAdil Nó hoạt động trên mặt của tôi (biên soạn khôn ngoan) nhưng bạn nói đúng, nó không phải là những gì muốn – Miquel

9
// Drop "0x" in order to parse 
String c = "6d4b"; 
// Parse hexadecimal integer 
int i = Integer.parseInt(c, 16); 
// Note that this method returns char[] 
char[] cs = Character.toChars(i); 
// Prints 测 
System.out.println(cs); 
+1

bạn có chắc chắn nó không chỉ là '' (char) i''? – Hachi

+0

Có, nếu giá trị kết quả được sử dụng như một 'char', kết quả sẽ giống nhau. Các cuộc gọi phương thức cung cấp cho bạn thêm tiền thưởng của javadoc sẵn có mà nói với những gì bạn đang thực sự nhận được. –

2
String s = "6d4b"; 
int i = Integer.parseInt(s, 16); // to convert hex to integer 
char ca= (char) i; 
System.out.println(ca); 
+0

tất cả trong một phiên bản dòng: 'System.out.println ((char) Integer.parseInt (c.substring (2), 16));' –

0
System.out.println((char)Integer.parseInt("6d4b",16));