【问题标题】:JShell language encoding in DOS/WindowsDOS/Windows 中的 JShell 语言编码
【发布时间】:2020-02-13 05:57:02
【问题描述】:

我遇到了 jshell 在 MS-Windows 上不显示非英文字母的问题。在 Linux 和 Mac 上,jshell 行为正确。

在 DOS 窗口中,我尝试输入希腊字母,例如:

jshell> var s = "Γειά"  

但我只能看到

jshell> var s = "????"  

我认为这与语言环境或字符集有关。

C:\> chcp  
437   

所以我把它改成了 UTF-8

C:\> chcp  
65001  

希望这能解决问题,但唉。请注意,在 DOS(在 jshell 之外)中,我可以毫无问题地输入希腊字母。

即使是来自 NetBeans 内部的 JShell 也不喜欢非英文字母:

[1]-> var s = "Γειά σου";  
|  s ==> "???? ???" 

所以我想知道是否有某种方法可以在 JShell 本身中设置编码。

请注意,此行为仅存在于 Windows 上的 JShell 中。操作系统区域设置已更改为支持希腊语。但是,JShell 不想遵守。

有没有人在尝试在 JShell Windows 中显示其他字母表中的字母时遇到过类似的行为?

【问题讨论】:

    标签: windows jshell


    【解决方案1】:

    试试

    chcp 1253 && jshell

    【讨论】:

    • 设置环境变量 JAVA_TOOL_OPTIONS=-Dfile.encoding=cp737 和 netbeans JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF8
    • JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF8 为我工作
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-29
    • 1970-01-01
    • 2021-10-26
    相关资源
    最近更新 更多