考虑:
这是真的unicode=utf16吗?
unicode=utf16
许多人说 Unicode 是一种标准,而不是一种编码,但实际上大多数编辑器都支持另存为 Unicode 编码 。
大多数编辑器实际上支持另存为“nicode”编码。
这是 Windows 犯下的不幸的错误命名。
因为 Windows 在内部使用 UTF-16LE 编码作为 Unicode 字符串的内存存储格式,所以它认为这是 Unicode 文本的自然编码。在 Windows 世界中,有 ANSI 字符串(当前机器上的系统代码页,完全不可移植)和 Unicode 字符串(内部存储为 UTF-16LE)。
这一切都是在 Unicode 的早期设计的,在我们意识到 UCS-2 还不够,在 UTF-8 被发明之前。这就是为什么 Windows 对 UTF-8 的支持很差的原因。
这种被误导的命名方案成为用户界面的一部分。使用 Windows 的编码支持来提供一系列编码的文本编辑器会自动且不恰当地将 UTF-16LE 描述为“nicode”,而将 UTF-16BE(如果提供)描述为“nicode big-endian”。
(其他自己进行编码的编辑器,比如 Notepad++,没有这个问题。)
如果它让您感觉更好,“NSI”字符串也不基于任何 ANSI 标准。