我先使用fseeko
将文件指针移至文件末尾,然后使用ftello
获得二进制文件的大小。我引用此页面Do not use fseek...,并遵循“兼容解决方案(POSIX ftello())”部分中的完全相同的代码。
我的问题是,这对于某些二进制文件可以正常工作,但对于某些其他二进制文件则无法工作。我现在正在寻找一种访问二进制文件大小的通用方法。
fseeko(imageFile, 0, SEEK_END);
imageSize = ftello(imageFile);
fseeko(imageFile, 0, SEEK_SET);
我更喜欢在C语言中使用stdio,而不是任何基于OS的功能。谢谢!