標準ライブラリIOインターフェース
fopen()
FILE * fopen ( const char * path, const char * mode );
機能:パラメーターパスで指定された名前でファイルを開き、ストリームに関連付けます。ストリームは、後続の操作で返されたファイルストリームポインターによって識別できます。
パス:パスを含むファイル名(パスがない場合、ファイルは現在のディレクトリに作成され
ます)モード:ファイルを開くメソッド
戻り値;成功、戻り操作ハンドル-ファイルストリームポインタ;失敗、NULLを返す
ファイルを開く方法
読み取りおよび書き込み権限を制御する文字列(指定する必要があります) |
---|
オープンメソッド | 説明 |
---|---|
「r」 | 「読み取り専用」モードでファイルを開きます。読み取りのみが許可され、書き込みは許可されません。ファイルが存在する必要があります。存在しない場合、開くことができません。 |
「w」 | 「書き込み」モードでファイルを開きます。ファイルが存在しない場合は、新しいファイルを作成します。ファイルが存在する場合は、ファイルの内容をクリアします(元のファイルを削除して新しいファイルを作成するのと同じです)。 |
「a」 | 「追加」モードでファイルを開きます。ファイルが存在しない場合は、新しいファイルを作成します。ファイルが存在する場合は、書き込まれたデータをファイルの末尾に追加します(ファイルの元の内容は保持されます)。 |
「r +」 | 「読み取りと書き込み」モードでファイルを開きます。どちらも読み取りと書き込みが可能です。つまり、ファイルを自由に更新できます。ファイルが存在する必要があります。存在しない場合、開くことができません。 |
「w +」 | 「書き込み/更新」モードでファイルを開きます。これは、「w」と「r」の重ね合わせ効果に相当します。どちらも読み取りと書き込みが可能です。つまり、ファイルを自由に更新できます。ファイルが存在しない場合は、新しいファイルを作成します。ファイルが存在する場合は、ファイルの内容をクリアします(元のファイルを削除して新しいファイルを作成するのと同じです)。 |
「a +」 | 「追加/更新」モードでファイルを開きます。これは、「a」と「r」の重ね合わせに相当します。どちらも読み取りと書き込みが可能です。つまり、ファイルを自由に更新できます。ファイルが存在しない場合は、新しいファイルを作成します。ファイルが存在する場合は、書き込まれたデータをファイルの末尾に追加します(ファイルの元の内容は保持されます)。 |
読み書きの方法を制御する文字列(書き込み不可) |
---|
「t」 | テキストファイル。書かれていない場合、デフォルトは「t」です。 |
「b」 | バイナリーファイル。 |
全体として、ファイルを開く方法は6文字のr、w、a、t、b、+で構成され、各文字の意味は次のとおりです
。r(読み取り):読み取り
w(書き込み):書き込み
a(追加):追加
t(テキスト):テキストファイル
b(バイナリ):バイナリファイル
+:読み取りと書き込み
fwrite()
size_t fwrite ( const void * ptr, size_t size, size_t nmemb, FILE * stream );
機能:ptrが指すメモリブロックからストリーム内の現在の位置にnmemb要素の配列を書き込みます。各要素のサイズはsizeバイトです。(実際に書き込まれるサイズはsize * nmembです)
ptr:書き込まれるデータ、
サイズ:ブロックサイズ; nmemb:ブロック数
戻り値:成功、ファイルに完全に書き込まれたブロック数を返します;失敗、0を返します
フレッド()
size_t fread ( void * ptr, size_t size, size_t nmemb, FILE * stream );
機能:ストリームからカウント要素の配列を読み取ります。各要素のサイズはサイズバイトで、ptrで指定されたメモリブロックに格納します。
ptr:読み取りデータを格納するためのバッファーの最初のアドレスを
渡しますサイズ:ブロックサイズ; nmemb:ブロック数-サイズ* nmembは読み取り
ストリームの全長です:fopenファイルストリームポインターによって返される操作ハンドル
戻り値:成功した場合は完全に読み取られたブロック数を返し、
失敗した場合は0を返し
、最後まで読み取ったファイルも0を返します(int feof(FILE * stream)を使用して、最後まで読み取るかどうかを決定できます。ファイル)
推奨事項:ブロックサイズを1に設定します。ブロック数は長さに設定されます
fseek()
int fseek ( FILE * stream, long offset, int whence);
機能:ジャンプファイルの読み取りおよび書き込み位置
オフセット:オフセット
理由:オフセットの相対的な開始位置SEEK_SET:ファイルの開始位置
;
SEEK_CUR:現在の位置; SEEK_END:ファイルの終了位置。
flclose()
int fclose ( FILE * stream );
機能:ストリームに関連付けられているファイルを閉じて、関連付けを解除します。