外部ライブラリを使用せずに C でファイル サイズを決定するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-11-12 21:20:02
オリジナル
328 人が閲覧しました

How to Determine File Size in C   Without External Libraries?

C でのファイル サイズの決定

移植性、信頼性、シンプルさを維持しながら、C でファイルのサイズを取得するにはどうすればよいですか?発生中のライブラリ依存関係?

解決策:

C でファイル サイズを決定する最も一般的で信頼性の高い方法は、std::ifstream クラスを利用することです。実装方法は次のとおりです:

#include <fstream>

std::ifstream::pos_type filesize(const char* filename)
{
    std::ifstream in(filename, std::ifstream::ate | std::ifstream::binary);
    return in.tellg();
}
ログイン後にコピー

このコード内:

  • std::ifstream(filename, std::ifstream::ate | std::ifstream::
  • std::ifstream::ate は、ファイル ポインタを次の場所に配置します。ファイルの終わり。
  • std::ifstream::binary は、ファイルがバイナリ モードで読み取られることを保証します。
  • in.tellg() は、ファイル ポインタの現在位置を取得します。ファイル サイズ。

注:
重要です。このソリューションでは Tellg() を使用しますが、特定のシステムでは常に正しいファイル サイズが返されるわけではないことに注意してください。詳細については、このディスカッションを参照してください: http://stackoverflow.com/a/22986486/1835769.

以上が外部ライブラリを使用せずに C でファイル サイズを決定するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート