【发布时间】:2016-03-29 10:04:57
【问题描述】:
应用程序(例如 vim)如何在读取给定文本文件之前知道它是哪种格式(例如 ASCII、unicode 等)?
另外,我们如何编写一个 C++ 程序来检测相同的内容?
【问题讨论】:
-
在 2015 年,相对可以假设每个文件都是 UTF-8。 (10-15 年前不是这样)
-
是的,但应用程序必须有某种方法才能正确判断?
-
@immibis Windows 应用程序的标准行为仍然是默认使用本地代码页(通常标记为 ANSI)。
-
@roeland 是的,在 2015 年,假设 每个 文件都是 UTF-8 仍然相对安全。即使是在 Windows 上创建的文件也很可能是 UTF-8。即使这不是 WIndows 的默认设置。