ストリーム入出力
これらの関数は、一つの文字から大規模なデータ構造に異なるサイズと形式のデータが処理されます。 また、パフォーマンスを向上できるバッファリングを使用します。 ストリームのバッファーの既定のサイズは KB です。 これらのルーチンは、ランタイム ライブラリ ルーチンによって作成されるバッファーのみ影響オペレーティング システムによって作成されるバッファーには影響しません。
ストリーム I/O ルーチン
ルーチン |
使用方法 |
同等の .NET Framework 関数 |
---|---|---|
ストリームの明確なエラー インジケーター |
使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。 |
|
ストリームを閉じる |
System::IO::Stream::Close、System::IO::BinaryReader::Close、System::IO::BinaryWriter::Close、System::IO::TextReader::Close、System::IO::TextWriter::Close、System::IO::StringReader::Close、System::IO::StringWriter::Close、System::IO::StreamReader::Close、System::IO::StreamWriter::Close |
|
すべての stdin、stdoutと stderrを除くオープン ストリーム閉じます。 |
System::IO::Stream::Close、System::IO::BinaryReader::Close、System::IO::BinaryWriter::Close、System::IO::TextReader::Close、System::IO::TextWriter::Close、System::IO::StringReader::Close、System::IO::StringWriter::Close、System::IO::StreamReader::Close、System::IO::StreamWriter::Close |
|
開いているファイルのファイル記述子でストリームを関連付けます。 |
||
ストリームの、ファイルの終端をテストします。 |
||
ストリームのエラーをテストします。 |
使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。 |
|
バッファリングする同じ高さのストリームまたはストレージ デバイス |
||
読み取るストリーム。(getc と getwc関数のバージョン) の文字を |
||
読み取ります。stdin (getchar と getwchar関数のバージョン) の文字を |
||
ストリームの位置インジケーターを取得します。 |
||
ストリームからの読み取り専用文字列 |
System::IO::StreamReader::ReadLine、System::IO::TextReader::ReadBlock |
|
ファイル記述子をストリームに関連付けられた取得します。 |
||
バッファリングを使用するようにすべてのストリームやストレージ デバイスをフラッシュします。 |
System::IO::FileStream::Flush、System::IO::StreamWriter::Flush、System::IO::TextWriter::Flush、System::IO::BinaryWriter::Flush |
|
ストリームを開きます。 |
||
fprintf、_fprintf_l、fwprintf、_fwprintf_l, fprintf_s、_fprintf_s_l、fwprintf_s、_fwprintf_s_l |
ストリームから書式付きデータを書き込みます。 |
|
記述するストリーム (putc と putwc関数バージョン) に文字を |
||
記述します stdout (putchar と putwchar関数バージョン) に文字を |
||
ストリームに文字列を書き込みます。 |
||
ストリームからの中間様式データを読み込みます。 |
||
新しいファイルまたはデバイスに FILE のストリーム ポインターを再割り当てします。 |
||
ストリームから書式付きデータを読み込みます。 |
System::IO::StreamReader::ReadLine; System::Double::Parseなどの Parse メソッドも参照してください。 |
|
指定した場所にファイルの位置に移動します。 |
System::IO::FileStream::Position、System::IO::FileStream::Seek |
|
ストリームの位置インジケーターを設定します。 |
||
ファイル共有のストリームを開きます。 |
使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。 |
|
ファイルの現在の位置を取得します。 |
||
ストリームに中間様式データ項目を記述します。 |
||
読み取るストリーム。(fgetc と fgetwcマクロ バージョン) の文字を |
||
読み取ります。stdin (fgetchar と fgetwcharマクロ バージョン) の文字を |
||
ストリーム I/O のレベルで許可されているファイルの数を同時に返します。 |
使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。 |
|
stdinからの読み取り専用行 |
||
ストリームからのバイナリ int を読み取ります。 |
使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。 |
|
printf、_printf_l、wprintf、_wprintf_l,printf_s、_printf_s_l、wprintf_s、_wprintf_s_l |
stdoutに書式付きデータを書き込みます。 |
|
記述するストリーム (fputc と fputwcマクロ バージョン) に文字を |
||
記述します stdout (fputchar と fputwcharマクロ バージョン) に文字を |
||
ストリームに行を記述します。 |
||
ストリームのバイナリ int を記述します。 |
使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。 |
|
ストリームの先頭にファイルの位置に移動します。 |
使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。 |
|
tmpfileで作成した一時ファイルを削除します。 |
使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。 |
|
scanf、_scanf_l、wscanf、_wscanf_l,scanf_s、_scanf_s_l、wscanf_s、_wscanf_s_l |
stdinから書式付きデータを読み込みます。 |
System::Console::ReadLine; System::Double::Parseなどの Parse メソッドも参照してください。 |
EXECUTE ステートメント ストリームのバッファリング |
使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。 |
|
ストリーム I/O のレベルで開いているファイルの数の最大値を同時に設定します。 |
使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。 |
|
EXECUTE ステートメント ストリームのバッファリングとバッファー サイズ |
使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。 |
|
_snprintf、_snwprintf、_snprintf_s、_snprintf_s_l、_snwprintf_s、_snwprintf_s_l |
文字列に指定された長さの書式付きデータを書き込みます。 |
使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。 |
_snscanf、_snwscanf、_snscanf_s、_snscanf_s_l、_snwscanf_s、_snwscanf_s_l |
指定した長さの書式付きデータを標準入力ストリームから読み取ります。 |
使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。 |
sprintf、swprintf、sprintf_s、_sprintf_s_l、swprintf_s、_swprintf_s_l |
文字列に書式付きデータを書き込みます。 |
|
文字列から書式付きデータを読み込みます。 |
System::Double::Parseなどの、Parse メソッドを参照してください。 |
|
特定のディレクトリの一時ファイル名を生成します。 |
使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。 |
|
一時ファイルを作成します。 |
使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。 |
|
一時ファイル名を生成します。 |
使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。 |
|
ストリームに文字を押し戻して。 |
使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。 |
|
_vcprintf、_vcwprintf、_vcprintf_s、_vcprintf_s_l、_vcwprintf_s、_vcwprintf_s_l |
コンソールに書式付きデータを書き込みます。 |
|
vfprintf、vfwprintf、vfprintf_s、_vfprintf_s_l、vfwprintf_s、_vfwprintf_s_l |
ストリームから書式付きデータを書き込みます。 |
使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。 |
vprintf、vwprintf、vprintf_s、_vprintf_s_l、vwprintf_s、_vwprintf_s_l |
stdoutに書式付きデータを書き込みます。 |
|
_vsnprintf、_vsnwprintf、vsnprintf_s、_vsnprintf_s、_vsnprintf_s_l、_vsnwprintf_s、_vsnwprintf_s_l |
バッファーに指定した長さの書式付きデータを書き込みます。 |
使用できません。 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。 |
vsprintf、vswprintf、vsprintf_s、_vsprintf_s_l、vswprintf_s、_vswprintf_s_l |
バッファーに書式付きデータを書き込みます。 |
プログラムの実行を開始すると、スタートアップ コードは自動的に複数のストリームを開く: 標準入力 (stdinでが指す)、標準出力 (stdoutでが指す)、および標準エラー (stderrでが指す)。 これらのストリームがコンソールに (キーボードと画面) 既定で送られます。 ディスク ファイルまたはデバイスに stdin、stdout、または stderr をリダイレクトするには freopen を使用します。
ストリーム ルーチンを使用して、開くファイルは、既定でバッファリングされます。 stdout と stderr 関数は、ライブラリの呼び出し後キャラクター デバイスに作成または完全になるたびに、フラッシュします。 プログラムが正常に終了した場合、出力はバッファー データが失われます、フラッシュされていない可能性があります。 指定されたファイルに関連付けられているバッファーまたはすべてがディスクにデータを書き込む前にデータをキャッシュするオペレーティング システムにバッファーをフラッシュするように fflush または _flushall を使用します。 ディスクのコミット機能がフラッシュされるバッファーの内容がシステム障害時に失われていないことを確認します。
ディスクにバッファーの内容をコミットする 2 とおりの方法があります。:
グローバルな設定するファイル COMMODE.OBJ とコミット フラグをリンクします。 グローバル フラグの既定の設定は nです (「非コミットします」。
fopen または _fdopenの c モードにフラグを設定します。
特に c または n フラグと開くすべてのファイルが、グローバルな状態に関係なくフラグに従って、commit/no コミット フラグを提供します。
プログラムが明示的にストリームを閉じる、ストリームは自動的にプログラムが終了するときに終了します。 ただし、プログラムで処理を終了すると、一度に限定される開いたストリームの数としてストリームを閉じる必要があります。 この制限については、" _setmaxstdio を参照してください。
入力は fflush またはファイル位置の関数 (fseek、fsetpos、または rewind) に中間の呼び出しでのみ出力に直接進むことができます。 出力はファイル位置の関数に、間に入力操作がファイルの末尾にある入力に進むことができます。