尽管设置了UTF-8,仍无法在CLion中使用MSYS2 MinGW64输出中文字符

问题描述 投票:0回答:1

我正在使用 MSYS2 的 MinGW64 编译器在 CLion 中开发 C++ 应用程序。我的项目涉及输出中文字符,但是尽管将所有内容都设置为 UTF-8(CLion 中的全局/文件/终端编码、源文件编码和 PowerShell 终端编码),但字符无法正确显示。它们在输出中显示为乱码文本或问号。

确保 CLion 中的所有编码(全局、文件、终端)均设置为 UTF-8。 已验证源文件是否以 UTF-8 编码保存。 使用 chcp 65001 将 PowerShell 的编码更改为 UTF-8。 在 Windows 中将 LANG 和 LC_ALL 环境变量设置为 en_US.UTF-8。 尝试在 C++ 中使用 std::wstring 和 std::wcout 处理和打印字符串。 我期望这些步骤可以让中文字符在输出中正确显示,但它们仍然显示不正确。似乎配置中缺少一个部分,或者与我正在使用的工具和环境存在兼容性问题。

c++ utf-8 clion msys2
1个回答
0
投票

要修复使用 MSYS2 的 MinGW64 编译器在 CLion 中的 C++ 应用程序中无法正确显示汉字的问题,您可以按照以下简化步骤操作:

  1. 打开 Windows 设置:转到“时间和语言”。

  2. 语言设置:点击“语言”。

  3. 管理设置:找到“管理语言设置”。

  4. 启用 UTF-8 支持:查找标有“Beta:使用 Unicode UTF-8 获得全球语言支持”的选项,然后选中此框。

  5. 应用更改:应用设置并重新启动计算机。

  6. 检查CLion:重启后,在CLion中打开您的项目,看看汉字是否正确显示。

这会将系统的语言编码更改为 UTF-8,这应该可以解决显示问题。

© www.soinside.com 2019 - 2024. All rights reserved.