首页 >后端开发 >C++ >如何在没有外部库的情况下确定 C 中的文件大小?

如何在没有外部库的情况下确定 C 中的文件大小?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-11-12 21:20:02404浏览

How to Determine File Size in C   Without External Libraries?

在 C 中确定文件大小

如何在 C 中获取文件的大小,同时保持可移植性、可靠性和简单性,而不需要产生库依赖性?

解决方案:

在 C 中确定文件大小的最常见和可靠的方法是利用 std::ifstream 类。以下是实现它的方法:

在此代码中:

  • std::ifstream(filename, std::ifstream::ate | std::ifstream:: binary) 打开指定的文件进行读取。
  • std::ifstream::ate 将文件指针定位在文件末尾。
  • std::ifstream::binary 确保文件是以二进制模式读取。
  • in.tellg() 检索文件指针的当前位置,该位置代表文件大小。

注意:
值得注意的是,该解决方案使用tellg(),它在某些系统上并不总是返回正确的文件大小。请参阅此讨论以获取更多信息:http://stackoverflow.com/a/22986486/1835769.

以上是如何在没有外部库的情况下确定 C 中的文件大小?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn