展开全部

对照最新版本的 Unicode (最少是62616964757a686964616fe59b9ee7ad9431333335343330 6.0  版本,不知道现在是否有 7.0) 里面找从哪个 code point 数字开始到哪个数字结束的是常用中文汉字,另外冷僻汉字肯定不是用单个 char 能表示的,它们是用2个甚至多个 char 表示一个冷僻汉字的。

在这个图片中找 Select Block  里面的汉字 CJK (Chinese, Japan, Koren) 区域,它就是汉字,但有时候汉字可能像外人一样把中日韩的汉字都放一起。

在百度上搜索 unicode 6.0 超大字符集字体支持包,里面提供 unicode 6.0 的 unicode character map 表。

另外你也有一个最傻瓜式的做法,跑个循环把一个整数从 1 到 65535的 cast 成为 char 然后把它打印出来观察哪个范围之内是汉字,这样你就知道怎么判断了。不过要知道这只是汉字的一部分,冷僻字都不在 65535 这 char 表示的 2 字节范围内,JRE 5 开始提供的 String 的 codePoint 支持方法可以用来观察这些事情,就像下面这个百度链接中的样例代码:

for (char c = 1; c 

{

System.out.print(String.valueOf(c));

if (c % 255 == 0)

{

System.out.println();

}

}

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐