在 C/C 中获取文件大小的便携式方法

新手上路,请多包涵

我需要确定文件的字节大小。

编码语言为 C++,代码应适用于 Linux、windows 和任何其他操作系统。这意味着使用标准 C 或 C++ 函数/类。

这种微不足道的需求显然没有微不足道的解决方案。

原文由 chmike 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 474
1 个回答

使用 std 的流,您可以使用:

 std::ifstream ifile(....);
ifile.seekg(0, std::ios_base::end);//seek to end
//now get current position as length of file
ifile.tellg();

如果您处理只写文件(std::ofstream),那么方法是另一个:

 ofile.seekp(0, std::ios_base::end);
ofile.tellp();

原文由 Dewfy 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题