如何在Visual Studio中设置标准编码

8aqjt8rx  于 2023-02-09  发布在  其他
关注(0)|答案(6)|浏览(344)

我正在寻找一种方法来设置VisualStudio,使它始终以UTF-8保存我的文件。
我只找到了设置此项目宽的选项。是否有方法将其设置为Visual Studio宽?

omtl5h9j

omtl5h9j1#

您是否希望将文件保存为UTF-8,因为您使用的特殊字符在ASCII编码中会丢失?如果是这样,则在Tools > Options > Environment > Documents中有一个VS 2008全局设置,名为Save documents as Unicode when data cannot be saved in codepage。启用此设置后,如果某些字符无法在其他默认代码页中表示,VS 2008将另存为Unicode。
另外,哪些文件 * 不 * 保存为UTF-8?默认情况下,我的所有.cs、.csproj、.sln、.config、.as*x等文件都保存为UTF-8(带有签名、字节顺序标记)。

ulydmbyx

ulydmbyx2#

什么

使用EditorConfig可以实现这一点。
EditorConfig帮助开发人员在不同的编辑器和IDE之间定义和维护一致的编码风格。
这也包括文件编码。
EditorConfig默认内置在Visual Studio 2017中,并且有一些插件可用于VS2012之前的版本。请参阅EditorConfig Visual Studio插件页面了解更多信息。

如何

您可以在文件夹结构中设置一个足够高的EditorConfig配置文件,以覆盖所有预期的repos(如果您的文件确实分散在各处,则可以一直到驱动器根目录),并配置设置charset

    • 字符集**:设置为latin1、utf-8、utf-8-bom、utf-16be或utf-16le以控制字符集。

您可以添加过滤器和例外等对每个文件夹的水平或文件名/类型,如果你想更好的控制。
一旦配置好,兼容的IDE应该会自动做它的事情,使匹配的文件符合设置的规则。注意,Visual Studio不会自动转换所有的文件,但当你在IDE中处理文件时(打开和保存),它会做它的一部分。

下一步是什么

虽然您可以进行Visual Studio范围的设置,但我强烈建议您仍然在解决方案版本控制中包含EditorConfig根目录,以便显式设置也自动同步到所有团队成员。如果某些项目尚未设置自己的editorconfig文件,您的驱动器根目录editorconfig文件可以作为后备。

sg2wtvxw

sg2wtvxw3#

我使用Windows7。
控制面板-区域和语言-管理-非Unicode程序的语言。
在我将“更改系统区域设置”设置为英语(美国)后,我的vs2010默认编码更改为Windows-1252。之前是gb2312
我为一个C++项目创建了一个新的.cpp文件,在将新文件签入TFS后,该文件的属性页中的编码显示为Windows-1252。

0yg35tkg

0yg35tkg4#

**问题是Windows/Microsoft应用程序在保存为非ASCII类型(UTF-8等)时,会在所有文件的开头放置字节顺序标记。**其他应用程序在读取文件顶部的这些奇怪的Microsoft UTF-8字节顺序编码标记时,通常会中断。

这个问题的一个很好的例子是在旧的IE浏览器中使用UTF-8编码时触发 quirsksmode,因为浏览器经常根据页面开头福尔斯编码来显示XHTML网页,当其他应用程序查看这些UTF-8 Visual Studio页面时,会造成混乱。
我通常不推荐Visual Studio扩展,但我这样做是为了解决这个问题:
修复文件编码:https://vlasovstudio.com/fix-file-encoding/
上面安装的FixFileEncoding删除了字节顺序标记,并强制VS在所有.NET页面顶部保存所有没有字节顺序标记的UTF-8文件。安装后,转到工具〉选项,然后选择“FixFileEncoding”。它应该允许您设置所有保存为UTF-8。将“cshtml”添加到文件列表中,以便总是保存为UTF-8,而不带字节顺序标记,如下所示:“.(htm|超文本标记语言|cshtml)$)"。
现在在Visual Studio中打开你的一个文件。要验证它是否保存为UTF-8,请转到文件〉另保存为,然后在保存按钮下选择“带编码保存”。它应该从编码列表中默认选择“UNICODE(保存时不带签名)”。现在,当你保存该页面时,它应该总是保存为UTF-8,在Visual Studio中保存时,在文件开头没有字节顺序标记。

b4qexyjb

b4qexyjb5#

我不知道全局设置,但你可以试试这个:
1.以UTF-8格式保存所有Visual Studio模板
1.编写一个Visual Studio宏/外接程序,该宏/外接程序将侦听DocumentSaved事件并以UTF-8格式保存文件(如果尚未保存)。
1.在源代码管理上放置一个代理,以确保新文件总是UTF-8。

wwwo4jvm

wwwo4jvm6#

这是一个老主题,但我会在这里什么帮助我:Change Visual Studio default encoding

相关问题