0

因此使用系统命令文件我们可以使用文件来确定文件是ASCII文本还是“数据”。我想知道是否有办法检查代码是哪一个?如果文件是“数据”,我想基本上抛出一个损坏的错误。我正在使用 ifstream 来读取文件。谢谢你的帮助!

这个问题的重复。

4

1 回答 1

0

您可以遍历文件的字节并使用std::isprintfrom<cchar>来测试字符是否可打印。如果文件中有不可打印的字符,则很可能是二进制文件。请注意,这仅适用于遗留编码(例如您提到的 ASCII),不适用于 Unicode 编码的文件。

于 2008-11-17T18:26:24.380 回答