在c ++中获取大文件的大小

问题描述 投票:-1回答:1

我有一个大约4 GB的大文件,我想获取正确的字节大小,我尝试过tellg();,但给出的结果不正确,我尝试了很多功能,但所有功能都失败了,具有如下功能:

    unsigned long long int GetFileSize(std::string path){
        //...code
    }
c++ file size
1个回答
0
投票

如注释中Jack所述,您可以使用std::filesystem::file_size

如果没有C ++ 17,请尝试以下操作:

#include <sys/stat.h>
unsigned long long GetFileSize(std::string path){
    struct stat64 file_info;
    if (stat64(path.c_str(), &file_info) == 0)
        return file_info.st_size;
    return 0;
}

在这里可以正确使用TDM-GCC 64位和8 GB文件。

© www.soinside.com 2019 - 2024. All rights reserved.