(Windows)使用ftello()对于“某些”二进制文件返回错误的文件大小

时间:2018-08-13 13:16:21

标签: c++ windows filesize fseek ftell

我先使用fseeko将文件指针移至文件末尾,然后使用ftello获得二进制文件的大小。我引用此页面Do not use fseek...,并遵循“兼容解决方案(POSIX ftello())”部分中的完全相同的代码。

我的问题是,这对于某些二进制文件可以正常工作,但对于某些其他二进制文件则无法工作。我现在正在寻找一种访问二进制文件大小的通用方法。

fseeko(imageFile, 0, SEEK_END);
imageSize = ftello(imageFile);
fseeko(imageFile, 0, SEEK_SET);

我更喜欢在C语言中使用stdio,而不是任何基于OS的功能。谢谢!

0 个答案:

没有答案