ファイル内の整数を読取 FileReadInteger 関数

関数

ファイル関数

FileReadInteger 関数

この関数は、開いているファイルのファイルポインタの現在位置から int、short、char型の値を読み取ります。

データ型と構成・戻り値

int FileReadInteger(①, ②);

戻り値は、開いているファイルのファイルポインタの現在位置から int、short、char型の値を取得します。

引数 [2]

FileReadInteger関数は 2個の引数で構成されます。


引数名データ型単位初期値説明
file_handleintFileOpen関数によって取得されるファイルハンドル
sizeintINT_VALUE読み取る必要があるバイト数。次の 3つから選択できます。
●CHAR_VALUE:char、uchar型の時に使用(1バイト)。
●SHORT_VALUE:short、ushort型の時に使用(2バイト)。
●INT_VALUE:int、uint型の時に使用(4バイト)。
初期値の「INT_VALUE」は、「CHAR_VALUE」と「SHORT_VALUE」を含みます。
※初期値があるものは省略可能です。省略した場合、初期値が設定されます。

この関数の結果は、対象の型を読み取る必要があるデータ型を明示的にキャストする必要があります。int型の値が返されるため、任意の整数値に簡単に変換できます。ファイルポインタは、読み取ったバイト数だけ移動します。

4バイト未満を読み取る場合、受信結果は常に正です。1バイトまたは 2バイトが読み取られる場合、char (1バイト) または short (2バイト) 型への明示的なキャストによって、数値の符号を判別できます。

使用例

FileReadInteger関数によるファイル内整数値の読み取り

FileReadInteger関数を使って指定した binファイルの int型の値を読み取ります。

読み取るファイルは FileOpen関数で選択します。もし、ファイルが存在しない場合は新規にファイルが作成されます。選択したファイルには FileWriteInteger関数を使って int型の値「12,345」を書き込んでおきます。int型の値の範囲についてはこちらでご確認ください。

書き込んだファイルの場所については FileOpen関数のページで確認してください。

コード

// FileReadInteger関数によるファイル内整数値の読み取り
#property strict
void OnInit() {

string filename = "test.bin"; // ファイル名
int handle;                   // ファイルハンドル
    
handle = FileOpen(filename, FILE_READ | FILE_WRITE | FILE_BIN );

uint b = FileWriteInteger(handle, 12345);

FileSeek(handle, 0, SEEK_SET); // ファイルポインタの位置を先頭に移動

Print("ファイルの内容:", FileReadInteger(handle));
Print("書き込んだバイト数:", b);

FileClose(handle);
}

コードをコンパイルして実行する方法はこちらを参考にしてください。(デモ口座でお試しください)

結果

タイトルとURLをコピーしました