如何在 VS2015 中以没有 BOM 的 UTF-16 LE 编码保存我的文件?
How do I save my file in UTF-16 LE encoding without BOM in VS2015?
在 this link 中,您会找到我在下面复制的 Table 1。请注意,此 table 上第三列的标题指定:UTF-16LE w/ or w/o BOM
。我能够保存包含以下代码片段的文件,
#include <iostream>
int main()
{
char c[] = u8"屰";
int i = 1;
}
通过选择VS2015中File
菜单下的菜单选项Advanced Save Options...
,其中Unicode codepage 1200
正好对应UTF-16LE encoding with BOM
。这可以在下面的第二张图片中查看,我在其中粘贴了使用二进制编辑器获得的文件图像的副本。可以看到文件的前两个字节是 0xFF 0xFE
,代表 UTF16-LE encoding
的 BOM。但是我无法在 Advanced Save Options...
对话框中找到用于使用 UTF-16LE encoding without BOM
保存我的文件的选项。我应该怎么做?
这不是 VS2015 的选项。即使是流行的 Notepad++ 也没有没有 BOM 的 UTF-16 选项。
如果这样做只是为了实验,请在保存后使用任何十六进制编辑器删除 BOM。 VS2015 内置了一个二进制编辑器。将文件保存为带有 BOM 的 UTF-16LE 后,使用二进制编辑器关闭并 re-open 文件并删除 BOM。不过,我发现如果没有它,VS2015 将无法正确打开文件,这可能就是该选项不可用的原因。
在 this link 中,您会找到我在下面复制的 Table 1。请注意,此 table 上第三列的标题指定:UTF-16LE w/ or w/o BOM
。我能够保存包含以下代码片段的文件,
#include <iostream>
int main()
{
char c[] = u8"屰";
int i = 1;
}
通过选择VS2015中File
菜单下的菜单选项Advanced Save Options...
,其中Unicode codepage 1200
正好对应UTF-16LE encoding with BOM
。这可以在下面的第二张图片中查看,我在其中粘贴了使用二进制编辑器获得的文件图像的副本。可以看到文件的前两个字节是 0xFF 0xFE
,代表 UTF16-LE encoding
的 BOM。但是我无法在 Advanced Save Options...
对话框中找到用于使用 UTF-16LE encoding without BOM
保存我的文件的选项。我应该怎么做?
这不是 VS2015 的选项。即使是流行的 Notepad++ 也没有没有 BOM 的 UTF-16 选项。
如果这样做只是为了实验,请在保存后使用任何十六进制编辑器删除 BOM。 VS2015 内置了一个二进制编辑器。将文件保存为带有 BOM 的 UTF-16LE 后,使用二进制编辑器关闭并 re-open 文件并删除 BOM。不过,我发现如果没有它,VS2015 将无法正确打开文件,这可能就是该选项不可用的原因。