强制Visual Studio(2010)以UTF-8保存所有文件

时间:2009-12-03 10:00:22

标签: visual-studio-2010

有什么方法可以强制Visual Studio(2010)以UTF-8保存所有文件吗?

3 个答案:

答案 0 :(得分:22)

我不知道如何强制它以UTF-8保存所有,但你可以根据具体情况这样做。首次保存文档并出现另存为...对话框时,“保存”按钮实际上是一个带有两个选项的下拉按钮。您需要“使用编码保存...”,然后会显示已安装的Windows编码的完整列表。

真正想要的编码在底层:

Unicode(无签名的UTF-8) - 代码页65001

虽然如果你想为自己省下很多痛苦,你可能会想要选择靠近顶部的选项:

Unicode(带签名的UTF-8) - 代码页65001

不同之处在于后一个选项坚持使用UTF-8签名(这只是UTF-8编码的UTF-16字节顺序标记)。这是我的烦恼之一,因为UTF-8没有具有多字节顺序,因此BOM最多是冗余的,并且在最坏的情况下会破坏所有类型的文本处理工具。 MS使用它来“自动”检测UTF-8,因为对于单字节字符,UTF-8,ISO-8859-1和CP-1252是相同的,除了32个字符(0x80 - 0x9f)的序列,MS基本上弥补。

如果您只使用Visual Studio或.NET工具编辑或处理文件,则使用签名保存可能会正常工作。如果您需要保存文件以供其他工具(批处理文件,SQL查询,PHP脚本等)使用,签名将导致问题,您应该在没有它的情况下保存它们。如果您这样做,您可能需要启用选项(在工具 - >选项 - >文本编辑器下)“自动检测无签名的UTF-8编码”,否则,右键单击该文件并选择“打开...“并选择编辑器选项”编辑器与编码“。

答案 1 :(得分:8)

我认为它会将文件保存在当前代码页中。在Tools-> Options-> Environment-> Documents下有一个选项,当它无法保存在当前代码页中时,它将使其保存为unicode。但我不知道这是否有帮助...

答案 2 :(得分:6)

我想您想尝试使用ForceUtf8(带BOM)/ ForceUtf8(无BOM)扩展。

只需在VS扩展程序库中搜索UTF8(工具 - >扩展和更新)