Problema de codificación VS2019, cómo cambiar perfectamente a UTF-8

Prefacio

El problema de codificación de VS siempre ha sido un dolor de cabeza: aunque el método de codificación GBK es más amigable, en realidad no es propicio para herramientas multiplataforma y de desarrollo cruzado.

Encontré un problema en el entorno VS2019 + Qt5.14. Qt usa UTF-8 de forma predeterminada, lo que puede causar fácilmente caracteres confusos, ya sea en la consola o en la interfaz de Qt.

Algunos de los métodos habituales en Internet son a través de

#ifdef WIN32  
#pragma execution_character_set("utf-8")  
#endif

Aunque se puede solucionar, no es una muy buena solución y no es lo suficientemente bonita y perfecta, no me gusta mucho.

Entonces, después de un tiempo de investigación, encontré una mejor manera.

Considerando exhaustivamente, sería mejor que VS2019 usara UTF-8 con codificación BOM. La siguiente solución también se cambia a UTF-8 con BOM. Por supuesto, también es adecuada para aquellos que solo quieren UTF-8 sin BOM.

Para observar fácilmente la codificación en lugar de usar otro software de texto para verla, descargué un complemento con anticipación FileEncoding, que mostrará la codificación del archivo actual en la esquina inferior derecha.
Insertar descripción de la imagen aquí

opcion uno

Descargue el complemento para resolver problemas de codificación

Se dice que con BOM no se reconoce en Linux. Originalmente quería probar UTF-8, pero el complemento force utf-8 no funcionó después de usarlo, así que tuve que usar la solución con BOM.

Más tarde, el problema se resolvió usando Format on Saveun complemento. Después de descargarlo, después 工具-选项de encontrar el complemento, solo necesitaba configurar dos elementos. El primer elemento se cambió porque estaba en Windows.
Insertar descripción de la imagen aquíInsertar descripción de la imagen aquí
Luego, después de crear un nuevo archivo, puede ver en la esquina inferior derecha que está codificado en GBK, pero después de guardarlo, se convierte en UTF-8 con BOM.

Opción II

Utilice el archivo editorconfig para unificar las especificaciones del código y unificar los problemas de codificación. Puede ser generado directamente por VS. A partir de Visual Studio 2019, los archivos EditorConfig se pueden generar según la configuración de estilo del código a través de "Herramientas" > "Opciones" > "Editor de texto".
Insertar descripción de la imagen aquí

Mi desarrollo aquí es C ++. En el estilo del código, puede encontrar el archivo EditorConfig generado en función de la configuración del estilo del código.

Después de la generación, agregar al archivo.

#编码方式,有以下几种类型:latin1, utf-8, utf-8-bom, utf-16be, utf-16le
charset = utf-8-bom

Sólo guárdalo. Por cierto, no olvide que este archivo debe colocarse en la ruta del proyecto.

Además, con respecto a los caracteres confusos en la interfaz Qt, lo anterior puede no ser suficiente, solo unifica los estándares de codificación de los archivos. Debe agregarse en Propiedades del proyecto-C/C+±Línea de comando-Otras opciones /utf-8, para que el estándar de codificación Qt UTF-8 pueda unificarse y el terminal Qt y la interfaz Ui no sean confusos.


2022-09-04 Actualización:

Si utiliza UTF-8 sin una solución BOM, puede consultar este artículo, que explica en detalle las causas y soluciones de los caracteres confusos.

Explore el problema del código confuso en Visual Studio

Lo anterior es la mejor solución que he encontrado hasta ahora. ¡Bienvenido a agregar!

Uso
de la convención de formato EditorConfig C++ EditorConfigFormato
al guardar

Supongo que te gusta

Origin blog.csdn.net/no_say_you_know/article/details/121146469
Recomendado
Clasificación