依存関係を最小限に抑えた C でのファイル サイズの決定
ファイル サイズの取得は、さまざまなプログラミング シナリオで共通の要件です。 C では、これを実現するために多数の方法を使用できます。この記事では、外部ライブラリの依存関係を最小限に抑える、移植可能で信頼性の高いアプローチについて説明します。
ファイル サイズを決定する最も簡単な方法の 1 つは、std::ifstream クラスを使用することです。このアプローチは追加のライブラリを必要とせず、Unix、Mac、Windows などのプラットフォームで広くサポートされています。
#include <fstream> std::ifstream::pos_type file_size(const char* filename) { std::ifstream in(filename, std::ifstream::ate | std::ifstream::binary); return in.tellg(); }
このコードでは、ate フラグはファイル ストリームがファイル ストリームの最後で開始されることを指定しています。ファイル。バイナリ フラグは、ファイルがバイナリ モードで開かれることを保証します。これは、すべてのプラットフォームでファイル サイズを正確に決定するために不可欠です。
tellg() 関数は、ファイル ポインタの現在位置を返します。ファイルのサイズ。ただし、特定の状況下では Tellg() 関数が誤った値を返す可能性があるため、このアプローチは常に信頼できるわけではないことに注意してください。したがって、場合によっては代替手段が必要になる場合があります。
以上が最小限の依存関係で C でファイル サイズを決定するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。