我正在尝试从使用Java文件数据库中的一些UTF-8编码的单字符中国。 当我这样做的字符返回为问号。
然而,当我从数据库中显示的字符(使用select * from ...
)的字符正常显示。 当我在由中国文字的Java文件打印一个字符串,它们也是正常打印。
我在Eclipse中有这个问题:当我跑的程序,正在打印为问号字符。 然而,当我保存在UTF-8格式的Java文件这个问题得到解决。
运行“区域设置”,在终端目前返回此:
LANG="en_GB.UTF-8"
LC_COLLATE="en_GB.UTF-8"
LC_CTYPE="en_GB.UTF-8"
LC_MESSAGES="en_GB.UTF-8"
LC_MONETARY="en_GB.UTF-8"
LC_NUMERIC="en_GB.UTF-8"
LC_TIME="en_GB.UTF-8"
LC_ALL=
我也曾尝试使用该编译我的java文件:
javac -encoding UTF-8 [java file]
但尽管如此,输出为问号。
这是很奇怪怎么会只是有时显示的字符。 有没有人有这样的解释? 甚至更好,如何解决这一问题,使字符显示正确?