防止 Visual Studio 在转换文件时添加 BOM

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

我有一个 JSON 文件

someconfig.json
以及调试/发布 transforms 文件
someconfig.Debug/Release.json

这三个都以 UTF-8 without BOM 编码。

但是转换产生的文件是用 UTF-8 和 BOM 编码的。

如何保留原始文件编码?

visual-studio utf-8 byte-order-mark
1个回答
0
投票

要保存没有 BOM 的文件:

  1. 在文件对话框中选择“另存为”。
  2. 扩展保存按钮选项并选择“使用编码保存”。
  3. 要永久更改默认编码:

  1. 打开“文件”菜单。
  2. 选择“高级保存选项”。
  3. 选择“UTF-8无签名”(这相当于“UTF-8 无 BOM”)。

注意:“UTF-8无签名”与“UTF-8无BOM”相同。 参考: UTF-8 无 BOM

还有一些方法允许自定义,例如 File.WriteAllText 方法: File.WriteAllText("output.json",transformedContent,new UTF8Encoding(false)); 当该变量设置为 false 时,将不包含 BOM。

https://learn.microsoft.com/en-us/dotnet/api/system.text.utf8encoding.-ctor?view=net-8.0

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