我们的软件有一个创建不同语言JAR文件的脚本,对于日语我们在调用native2asci时使用编码SJIS。这是上次尝试日语版本时的效果,但现在似乎只能在某些情况下使用。例如,在以下对话框中,编码似乎只在标题栏中起作用:
任何人都知道可能导致这种情况的原因是什么?这个问题可能与Java的变化有关吗?
答案 0 :(得分:1)
你究竟通过native2ascii传递了什么?只是为了确保,你正在使用native2ascii -encoding Shift_JIS,对吧?你通过native2ascii传递文本文件或源文件,对吗?
我唯一的另一个想法是,在文本转换为\ uXXXX格式后,用于显示对话框的字体可能没有所有的汉字和假名。明确设置字体,然后尝试。
答案 1 :(得分:1)
我建议检查这两件事:
native2ascii
次转化正确无误。您应该使用-reverse
标记进行往返转换,并确保输入和输出同步。另一个警告:如果此应用程序打算在Windows上使用,那么您确实应该使用MS932
或windows-31j
编码。 SJIS
将适用于除十几个符号之外的所有符号,但事实证明这些符号(如全宽波形符号)实际上在日本经常使用。
答案 2 :(得分:0)
我认为正确的方法是使用UTF-8或UTF-16。汉字和片假名需要特别注意。