toCharArray和UTF-16的结果不一致

时间:2017-07-23 17:40:04

标签: java utf-16 chinese-locale

我仍然试图用Java中的unicode处理和编码中文字符,也许有人可以解释我在调试器中看到的内容。我希望我可以保持简单,不要深入研究codePoints或使用getBytes并简单地坚持toCharArray。我从Web API /页面或Google表格中检索带有中文字符的字符串。我的理解是,这一切都在Java内部作为UTF-16处理(对用户隐藏)。我似乎(可靠地)每个汉字得到2(Java)chars,甚至像问号和标点符号。通过toCharArray将字符串转换为字符数组时,我似乎几乎总能看到一个领先的' u200b' (空格)然后用正确的unicode实际字符。 (我知道这更复杂,我可能说错了)。

char[] FW_Array = tmpChar.toCharArray();

但这是我的实际问题,我似乎只得到了一个(Java)char用于' - '在第一种情况下,对于(我假设)相同的字符,我在第二种情况下得到两个(Java)char。怎么样?

enter image description here

enter image description here

0 个答案:

没有答案