C++ Wiki

2016.01.05

Tags: fstream

バイナリファイルを扱う場合はstd::ifstream::ate | std::ifstream::binaryとします。

ファイルサイズの取得方法

サンプルコード

#include <iostream>
#include <fstream>
#define FILENAME "filename"

int main()
{
  std::ifstream file(FILENAME, std::ifstream::ate);
  size_t filesize = static_cast<size_t>(file.tellg());

  //ファイル位置を戻す場合
  //file.seek(0, std::ifstream::beg);

  std::cout << "size: " << filesize << std::endl;

  return 0;
}

実行結果

size: 351425