2

我正在用 Java 编写非常简单的控制台应用程序。

问题是我需要将西里尔文和爱沙尼亚语的非 utf8 符号输出到控制台,但是在 Windows 中我得到一堆奇怪的符号,而在 MacOsX 中我只得到 ???? 而不是更具可读性的东西。

我怎样才能实现我的目标?

--更新1--

语言环境给了我:

朗=
LC_COLLATE="C"
LC_CTYPE="UTF-8"
LC_MESSAGES="C"
LC_MONETARY="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_ALL=

似乎我被那个 UTF-8 东西困住了 %)

奇怪的想法:

有没有办法从 Eclipse 中获取控制台并在 Eclipse 之外使用它?

4

1 回答 1

1

Windows 终端:终端程序 ,cmd.exe不使用与操作系统其余部分相同的编码,并且从 Java 中您无法知道您是否正在从终端运行。在运行程序之前,您必须设置 Lucida Console 使用的字体并cmd.exe切换“代码页” :chcp

OS X 终端:据我所知,终端配置为 UTF-8,因此您可以只使用 UTF-8。使用该locale命令检查您的编码。

于 2012-03-22T13:56:51.283 回答