如何将unicode值转换为它的表示?

时间:2014-07-14 04:26:58

标签: java scala unicode emoji

对不起,我可能措辞很差。这就是我所拥有的

1f1e8-1f1f3 

这代表一个标志表情符号。我可以成功地将正常的unicode值转换为它的表情符号:

new String(Character.toChars(Integer.parseInt(e.unified.split("-").head, 16)))

但对于有破折号的表情符号我不能。我不确定从哪里开始。

如果需要,我很乐意提供更多信息。老实说,我没有对unicode值的词汇或理解,以正确表达我的问题。

我需要做的是:获取unicode值(例如上面的值)并将其转换为字符或字符串。而不是unicode值,我想要那个值代表什么......我希望这会有所帮助。

1 个答案:

答案 0 :(得分:1)

标志表情符号由两个 regional indicator symbols组成。这样做是为了避免政治争论:由字体设计师选择他们想要支持的国家标志,Unicode本身是中立的。

每个区域指标符号必须以Java形式呈现为两个代理人。

所以你只需要从几个部分创建你的字符串:

new String(e.unified.split("-").flatMap{ codepoint => 
    Character.toChars(Integer.parseInt(codepoint, 16))
})