PR

 ファイルの読み書きを同期、または非同期で行うにはFileStreamクラスを使う。FileStreamクラスのバッファを利用したファイル入出力を使用するとパフォーマンスが向上する。

 ファイルの任意の場所からの読み出しや、任意の場所への書き込みを行うには、Seekメソッドを利用する。Seekメソッドでは、ファイルの先頭や、現在の位置、末尾からの相対位置を指定して、読み出し/書き込みを行う位置を指定できる。

 同期処理を行うにはReadとWriteメソッドを使う。非同期処理を行うには、BeginReadとBeginWrite、EndRead、EndWriteを使う。

サンプルコードを見る


名前空間
System.IO
対応バージョン
.NET Framework 2.0、1.1、1.0
.NET Compact Framework 2.0、1.0
主なプロパティ
CanRead
ストリームが読み取りをサポートしているかどうかを示す。

CanSeek
ストリームがシークをサポートしているかどうかを示す。

CanWrite
ストリームが書き込みをサポートしているかどうかを示す。

IsAsync
FileStreamコントロールが非同期モードで開かれたかどうかを示す。

Length
現在のファイルのサイズ。

主なメソッド
Seek
ストリームの現在位置を設定する。

Read
ファイルの内容を、バイト配列に読み出す。

Write
バッファのデータを使用して、ストリームにバイトのブロックを書き込む。

ReadByte
ストリームから1バイトを読み取り、ストリーム内の位置を1バイト進める。ファイルの末尾の場合は-1を返す。

WriteByte
ファイル ストリームの現在位置にバイトを書き込む。

BeginRead
非同期の読み込み動作を開始する。

EndRead
実行中の非同期読み取り処理が完了するまで待機する。

BeginWrite
非同期の書き込み操作を開始する。

EndWrite
非同期の書き込みを終了し、I/O操作が完了するまで待機する。

Close
現在のストリームを閉じ、現在のストリームに関連付けられているすべてのリソース(ソケット、ファイルハンドルなど)を解放する。

Lock
他のプロセスによってファイルが変更されるのを防ぐ。

Unlock
ファイルの全部または一部へのアクセスを許可する。

Flush
ストリームに対応するすべてのバッファ内のデータを基になるデバイスに書き込み、バッファをクリアする。

SetLength
ストリームの長さを設定する。