TL; DR;
-
在日语Windows中,
dotnet 命令输出为UTF-8,因此字符乱码。-
要解决此问题,请运行
chcp 65001 以使控制台代码页为UTF-8。
-
要解决此问题,请运行
-
Windows特定的设置可以在VS Code任务定义中作为
windows 进行。-
在
chcp 65001 之后指定在那里执行dotnet 命令
-
在
怎么了
我认为Visual Studio代码(以下称为VS代码)以及Visual Studio for .NET Core应用程序开发经常被使用。
VS Code是在无法使用完整Visual Studio(以下简称VS)的macOS和Linux桌面中经常使用的映像,但是即使在Windows中,它也比VS轻巧,并且还具有调试器,因此需要一点开发然后,它的工作出乎意料的好。
问题是,当您在任务中执行
*参考:dotnet核心支持的文本编码| OPC Diary
作为一种解决方法,似乎可以在执行cmd.exe时弄乱注册表以自动执行
*参考:如何在启动命令提示符时自动将字符代码更改为UTF-8,以便可以正确显示日语--Qiita
解决方案
因此,在VSCode的任务定义中,不是仅在Windows中执行
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | { "version": "0.1.0", "command": "dotnet", "isShellCommand": true, "args": [], "windows": { // Windows固有の設定 "command": "cmd", // cmd.exeを実行 "args": [ "/C", "chcp 65001 && dotnet"] // /Cオプションで第二引数のコマンドを実行 }, // chcp 65001 の後に && で続けてdotnetを実行するよう指定 "tasks": [ { "taskName": "build", "args": [ ], "isBuildCommand": true, "problemMatcher": "$msCompile" }, ] } |
*参考:自定义任务-Visual Studio Code
中的任务
如果运行
构建,则可以看到已经消除了乱码。
现在,您可以使用VSCode进行舒适的.NET Core开发!