我用Java做了一个基本的猜谜游戏。它是西班牙语,因此它有一些重音符号(á,é)和一些倒置的惊叹号(¡)。问题是,当我在命令行上运行程序时,它没有显示重音符号,看起来很奇怪......有人可以帮我这个吗?
答案 0 :(得分:0)
命令行只能通过在System.out上打印它们来显示某些字符。 也许在简单的JTextField或JLabel或类似的东西中编写输出会更容易,因为JTextField / JLabel能够显示当前Font中包含的每个unicode字符。
答案 1 :(得分:0)
尝试更改控制台的字体。
您还可以通过发出命令 -
来更改控制台的代码页chcp CODE_PAGE
e.g.
chcp 65001
要在控制台上永久更改 -
1. Start->Run->regedit
2. Go to [HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\Autorun]
3. Change the value to code page e.g. chcp 65001
更新:
根据this page,您可以使用代码页437.
答案 2 :(得分:0)
我知道这是一个古老的问题,但是如果将来有人遇到相同的问题,这可能会回答它。
从命令提示符运行程序时,需要将一个选项传递给JVM:-Dfile.encoding = utf-8
您的命令将如下所示:
java -Dfile.encoding=utf-8 <mainClass> <... other args>
如果无法手动添加此选项,则可以告诉Windows从环境变量JAVA_TOOL_OPTIONS中自动选择它:
现在,如果您输入:
java <MainClass> <... other args>
Windows会自行添加编码选项。