我在哪里可以获得对应于日文汉字、平假名和片假名字符的 ASCII 代码列表。我正在做一个 java 函数和 Javascript 来确定它是否是日语字符。它在 ASCII 码中的范围是多少?
7 回答
请参阅我关于汉字/假名字符的类似问题。正如@coobird 提到的那样,决定要检查的范围可能很棘手,因为许多汉字与汉字重叠。
简而言之,平假名和片假名的 Unicode 范围是:
- 平假名:Unicode:3040-309F
- 片假名:Unicode:30A0–30FF
如果您发现此答案有用,请同时支持@coobird 对我的问题的回答。
がんばって!
日文字符不在 ASCII 范围内,它们将在 Unicode 中。你想要什么,只是每个字符的 char 值?
好吧,已经有一段时间了,但这里有一个指向平假名、片假名、汉字等表格及其 Unicode 的链接......
http://www.rikai.com/library/kanjitables/kanji_codes.unicode.shtml
但是,您可能知道 Unicode 是十六进制的。您可以在程序员模式下使用 Windows Calc 将它们转换为十进制数字,然后将该数字作为 ASCII 代码输入,它会生成您想要的字符,这取决于您输入的内容。它将在 MS 写字板和 Word(不是记事本)中。
例如,平假名 ぁ 在 Unicode 中是 3041。3041 是十六进制,转换为十进制的 12353。如果您在写字板或 Word 中输入 12353 作为 ASCII 码,即按住 Alt,在数字键盘上输入 12353,然后松开 Alt,它将打印 ぁ。日文字符的范围好像是平假名:3040 - 309f(ASCII中的12352-12447),片假名:30a0 - 30ff(ASCII中的12448-12543),汉字:4e00-4DB5(19968-19893 ASCII),所以有几种范围。该图表上还有一个半角片假名范围。
我不会重新散列 ASCII 部分。只需看看Unicode 代码表。
汉字的 Unicode“脚本”属性为Hani
,平假名的“脚本”属性为Hira
,片假名的“脚本”属性为Kana
。在 Java 中,您可以使用 Character.UnicodeScript 类确定字符的“脚本”属性:http: //docs.oracle.com/javase/7/docs/api/java/lang/Character.UnicodeScript.html我不知道'不知道您是否可以在 Javascript 中确定角色的“脚本”属性。
当然,大多数汉字是中文中也使用的字符;给定像猫这样的字符,无法判断它是用作汉字还是日文。
我认为您所说的日文ASCII码是指日文中的SBCS(单字节字符集)等价物。对于日语,您只有一个组合了单字节字符和多字节字符的MBCS(多字节字符集)。因此,对于保存在 MBCS 中的日文文本文件,您将非日文字符(英文字母和数字以及常见的非字母数字字符)保存为一个字节,将日文字符保存为两个字节。
假设您指的不是UNICODE,它是一个统一的DBCS(双字节字符集),其中每个字符正好是两个字节。实际上更正确的是,UNICODE 最近也有多个 DBCS,因为字符集不能再容纳其他字符了。一些 UNICODE 字符由 4 个字节组成,前两个字节作为前导字符。
如果您指的是第一个(MBCS)而不是 UNICODE,那么有很多日文字符集,如Shift-JIS(更流行的字符集)。所以我建议你搜索 Shift-JIS 字符映射。尽管除了 Shift-JIS 之外还有其他日文字符集映射。