Используя C++ filestreams (fstream), как можно определить размер файла? [дубликат]

73
задан warren 9 March 2010 в 14:00
поделиться

2 ответа

Вот так:

long begin, end;
ifstream myfile ("example.txt");
begin = myfile.tellg();
myfile.seekg (0, ios::end);
end = myfile.tellg();
myfile.close();
cout << "size: " << (end-begin) << " bytes." << endl;
9
ответ дан 24 November 2019 в 12:13
поделиться

Вы можете искать до конца, а затем вычислить разницу:

std::streampos fileSize( const char* filePath ){

    std::streampos fsize = 0;
    std::ifstream file( filePath, std::ios::binary );

    fsize = file.tellg();
    file.seekg( 0, std::ios::end );
    fsize = file.tellg() - fsize;
    file.close();

    return fsize;
}
58
ответ дан 24 November 2019 в 12:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: