【发布时间】:2011-03-20 18:42:06
【问题描述】:
-
为什么保存为 UTF8(在 Notepad++ 中)的文件在我在 c++ 程序中打开的 fstream 开头有这个字符?
´╗┐
我不知道它是什么,我只知道当我保存为 ASCII 时它不存在。 更新:如果我将它保存为 UTF8(没有 BOM),它就不存在了。
如何在 c++ 中检查文件的编码(ASCII 或 UTF8,其他所有内容都将被拒绝;))。就是这些字符吗?
谢谢!
【问题讨论】:
-
你能给我们一个文件开头的十六进制转储,而不是一些我们无法识别的随机字符(而且我们的字体可能不会显示吗?)
-
可能是 UTF-8 BOM 被误解为 IBM850。
标签: c++ utf-8 ascii fstream byte-order-mark