编码|Java on Visual Studio Code的更新 – 2021年11月( 二 )
publicclassHello{publicstaticvoidmain( String[] args) {System. out.println( "你好!");} }
- 程序需要从stdin读取Unicode字符 , 并将Unicode字符打印到stdout
之前 , 为了缓解编码问题 , 我们在Java Debugger端添加了一些解决方法去强制在我们的工具链中使用UTF-8 。 例如 , 添加一个launcher.bat强制终端的代码页为65001 , 并将默认的“file.encoding”属性设置为“UTF-8” 。 但事实证明 , 它们并没有系统地解决编码问题 , 并且还引入了一些额外的副作用(参见#756, microsoft/vscode-java-debug#622, microsoft/vscode-java-debug#646) 。
在对该问题进行更多调查后 , 我们发现我们添加的解决方法似乎没有必要 。 用户只需要将windows系统区域设置为他们想要的语言 , 然后JVM和终端将自动更改为与您的系统区域设置兼容的编码 。 官方Java文档 (https://www.java.com/en/download/help/locale.html)也建议这样做 。
以下屏幕截图显示了如何在Windows中更改系统区域设置 。 例如 , 如果您想使用终端在Java程序中输入汉字 , 您可以将Windows系统区域设置为中文 。 默认的Java字符集将是”GBK”并且cmd代码页将是”936″, 它将很好地支持中文字符 。

文章图片
这是有关如何处理编码问题的详细文档 。
- #756: https://github.com/microsoft/vscode-java-pack/issues/756
- microsoft/vscode-java-debug#622: https://github.com/microsoft/vscode-java-debug/issues/622
- microsoft/vscode-java-debug#646: https://github.com/microsoft/vscode-java-debug/issues/646
- 详细文档: https://github.com/microsoft/vscode-java-debug/blob/main/Troubleshooting_encoding.md
等元数据文件说再见
如果您正在使用Java扩展包进行Java开发 , 我们有个好消息要告诉您 – 当您导入新的 Java 项目时 , Visual Studio Code不再在项目路径中生成那些隐藏的“.project”元数据文件!这是一个已经存在三年多的问题 , 而我们在11月的版本中修复了它 。 如果您有兴趣了解我们是如何解决的 , 请访问https://devblogs.microsoft.com/java/say-goodbye-to-project-files-in-1-1-0/
推荐阅读
- 编码|飞利浦发布 Fidelio T1 真无线降噪耳机:圈铁三单元,1699 元起
- 索尼|2021 全球MIPI网络编码控制板首发完美对接索尼fcb-ev9500M摄像头机芯
- 采取行动|微软宣布改善 Visual Studio 反馈系统,旧版本将不再兼容
- 漏洞|Log4j 2 杀不死 Java!
- foojay|[译]Log4j2 杀不死 Java
- 漏洞|《我的世界》Java 版已修复 Log4j 高危漏洞,请尽快更新
- 可用于|微软 Visual Studio 将改善 Python 支持,不再捆绑旧版本
- Agility|Win11 原生支持,微软发布 DirectX 12 全新视频编码 API
- Microsoft|微软宣布推出Windows 11原生DX12视频编码API
- 路径|和 .project 文件说“再见”—— VS Code Java 1.1.0 背后的故事