1.“汉”的Unicode编码为6C49,这个编码是怎么运算来的?我使用UltraEdit查看“汉”的十六进制编码为 ba ba ,这个16进制和Unicode编码之间有什么联系?2.在java中使用的编码是Unicode的,我使用如下代码
String str = "汉";
byte[] strArr = str.getBytes();
其中strArr有两个元素,每一个都只-70,这个不知道该怎么理解?
strArr = str.getBytes("unicode");这样的话答案输出:
-1
-2
73
108
那个-1 -2 怎么来的?3.http://topic.csdn.net/u/20080623/16/e0f44f00-eaf9-4d38-b325-a3cc443f2ec9.html
这个是关于“三只小熊”编码问题的讨论贴,其中“三只小熊”的gbk编码为 C8FD D6BB D0A1 D0DC (详见11楼火龙果回帖),而“三只小熊”的十六进正好为:C8 FD D6 BB D0 A1 D0 DC ,我想问一下,各种编码和字符的某种进制表示到底是什么关系?
String str = "汉";
byte[] strArr = str.getBytes();
其中strArr有两个元素,每一个都只-70,这个不知道该怎么理解?
strArr = str.getBytes("unicode");这样的话答案输出:
-1
-2
73
108
那个-1 -2 怎么来的?3.http://topic.csdn.net/u/20080623/16/e0f44f00-eaf9-4d38-b325-a3cc443f2ec9.html
这个是关于“三只小熊”编码问题的讨论贴,其中“三只小熊”的gbk编码为 C8FD D6BB D0A1 D0DC (详见11楼火龙果回帖),而“三只小熊”的十六进正好为:C8 FD D6 BB D0 A1 D0 DC ,我想问一下,各种编码和字符的某种进制表示到底是什么关系?
就当成一个字典看。我使用UltraEdit查看“汉”的十六进制编码为 ba ba ,这个16进制和Unicode编码之间有什么联系?
baba是GBK编码。和unicode是两种编码。可以认为是两个不同的字典。
2.在java中使用的编码是Unicode的,我使用如下代码
String str = "汉";
byte[] strArr = str.getBytes();
其中strArr有两个元素,每一个都只-70,这个不知道该怎么理解?
String.getBytes();是按照系统的默认编码转化为字节。windows中文系统通常是GBK。
GBK编码用两个字节表示一个中文字符。-70 表示成16进制就是0xba,就是你上面说的 ba ba
strArr = str.getBytes("unicode");这样的话答案输出:
-1
-2
73
108
那个-1 -2 怎么来的?
-1 -2表示的是字节序,
看这个老贴子
http://topic.csdn.net/u/20081009/09/e899898c-591f-4985-ae88-5972475708fb.html