ファイル処理

ファイル処理ルーチンは、ファイルの作成、削除、操作、およびファイル アクセス許可の設定、チェックに使用します。

C ランタイム ライブラリには、同時に開くことのできるファイル数の上限が 512 に設定されています。 上限を超える数のファイル記述子またはファイル ストリームを開こうとすると、プログラム エラーが発生します。 この数を変更するには、_setmaxstdio を使用します。

ファイル処理ルーチン (ファイル記述子)

ファイル記述子で指定されたファイルを操作するには、次のルーチンを使います。

ルーチンによって返される値 使用
_chsize,_chsize_s ファイル サイズを変更します。
_filelength, _filelengthi64 ファイル長を取得します。
_fstat_fstat32_fstat64_fstati64_fstat32i64_fstat64i32 記述子のファイル ステータス情報を取得します。
_get_osfhandle C ランタイムの既存のファイル記述子に関連付けられたオペレーティング システムのファイル ハンドルを返します。
_isatty キャラクター デバイスをチェックします。
_locking ファイル領域をロックします。
_open_osfhandle C ランタイムのファイル記述子を既存のオペレーティング システムのファイル ハンドルに関連付けます。
_setmode ファイルの変換モードを設定します。

ファイル処理ルーチン (パスまたはファイル名)

パスまたはファイル名で指定されたファイルを操作するには、次のルーチンを使います。

ルーチンによって返される値 使用
_access_waccess_access_s_waccess_s ファイルのアクセス許可の設定をチェックします。
_chmod, _wchmod ファイルのアクセス許可の設定を変更します。
_fullpath, _wfullpath 相対パス名を絶対パス名に展開します。
_makepath_wmakepath_makepath_s_wmakepath_s パス コンポーネントを単一の完全パスにマージします。
_mktemp_wmktemp_mktemp_s_wmktemp_s 一意のファイル名を作成します。
remove, _wremove ファイルの削除
rename, _wrename ファイルの名前を変更
_splitpath_wsplitpath_splitpath_s_wsplitpath_s コンポーネントのパスを解析します。
_stat_stat64_stati64_wstat_wstat64_wstati64 名前付きファイルのファイル ステータス情報を取得します。
_umask, _umask_s プログラムが新しく作成したファイルに、既定のアクセス許可マスクを設定します。
_unlink, _wunlink ファイルの削除

ファイル処理ルーチン (開いているファイル)

これらのルーチンは、ファイルを開きます。

ルーチンによって返される値 使用
fopen_wfopenfopen_s_wfopen_s ファイルを開き、開いているファイルへのポインターを返します。
_fsopen, _wfsopen ファイル共有でストリームを開き、開いているファイルへのポインターを返します。
_open, _wopen ファイルを開き、開いているファイルへのファイル記述子を返します。
_sopen_wsopen_sopen_s_wsopen_s ファイル共有でファイルを開き、開いているファイルへのファイル記述子を返します。
_pipe 読み取りおよび書き込み用のパイプを作成します。
freopen_wfreopenfreopen_s_wfreopen_s ファイル ポインターを再度割り当てます。

次のルーチンを使うと、FILE 構造体、ファイル記述子、および Win32 ファイル ハンドル間でファイルの表示を変更できます。

ルーチンによって返される値 使用
_fdopen, _wfdopen ストリームを前回下位入出力で開いたファイルに関連付け、オープン ストリームへのポインターを返します。
_fileno ストリームに関連付けられているファイル記述子を取得します。
_get_osfhandle C ランタイムの既存のファイル記述子に関連付けられたオペレーティング システムのファイル ハンドルを返します。
_open_osfhandle C ランタイム ファイル記述子を既存のオペレーティング システムのファイル ハンドルに関連付けます。

ファイルおよびパイプは、次の Win32 関数でも開くことができます。

関連項目

カテゴリ別ユニバーサル C ランタイム ルーチン
ディレクトリ コントロール
システム呼び出し