Java在Windows命令行无法正确显示波斯文的问题求助
问题:如何让Java程序在Windows命令行正确显示波斯文?
我的代码
class Hello{ public static void main(String[] arg)throws Exception{ System.out.println("Hello"); String str = "سلام"; System.out.println(new String(str.getBytes("UTF-8"))); } }
编译命令
javac -encoding UTF8 Hello.java
执行输出
C:\Users\Windows\Desktop>java Hello Hello ط³ظ„ط§ظ…
当前命令行代码页
执行chcp命令显示:Active code page: 65001
解决方法
- 移除代码中多余的编码转换操作,直接输出字符串即可,修改后的代码如下:
class Hello{ public static void main(String[] arg)throws Exception{ System.out.println("Hello"); String str = "سلام"; System.out.println(str); } } - 执行Java程序时,指定输出编码为UTF-8,使用命令:
java -Dfile.encoding=UTF-8 Hello - 确保命令行窗口使用支持波斯文的字体:右键命令行窗口标题→选择「属性」→切换到「字体」选项卡,选择「Consolas」或「Lucida Console」等支持Unicode的字体,点击确定。
内容的提问来源于stack exchange,提问作者user987376746090
相关产品推荐
相关产品推荐

