ホームページ > バックエンド開発 > C++ > C# でファイルの読み取りと書き込みを同時に行うにはどうすればよいですか?

C# でファイルの読み取りと書き込みを同時に行うにはどうすればよいですか?

Patricia Arquette
リリース: 2025-01-06 06:45:41
オリジナル
349 人が閲覧しました

How Can I Simultaneously Read and Write to a File in C#?

C# でファイルの読み取りと書き込みを同時に行う

ファイルを操作するとき、読み取りと書き込みの両方が必要になることがよくあります。ファイル。ただし、次のコード スニペットはこれを実行しようとしますが、失敗します。

static void Main(string[] args)
{
    StreamReader sr = new StreamReader(@"C:\words.txt");
    StreamWriter sw = new StreamWriter(@"C:\words.txt");
}
ログイン後にコピー

このコードは、読み取りと書き込みに別のストリームを使用するため失敗します。これは、両方のストリームを明示的に指定せずに同じファイルに対して許可されません。

ファイルの読み取りと書き込みを同時に行うには、読み取りと書き込みの両方に開いている単一のストリームを使用する必要があります。これは、FileStream クラスを使用して実現できます。

FileStream fileStream = new FileStream(
      @"c:\words.txt", FileMode.OpenOrCreate, 
      FileAccess.ReadWrite, FileShare.None);
ログイン後にコピー

FileMode.OpenOrCreate パラメータは、ファイルが存在しない場合にファイルを開くか作成する必要があることを指定します。

FileAccess.ReadWrite パラメータは次のことを指定します。ファイルは読み取りと書き込みの両方で開かれる必要があります。

FileShare.None パラメーターは、他のプロセスが存在しないことを指定します。ファイルが開いている間、ファイルの読み取りまたは書き込みを許可する必要があります。

FileStream を作成したら、Read() メソッドと Write() メソッドを使用してファイルの読み取りと書き込みを行うことができます。それぞれ。

以上がC# でファイルの読み取りと書き込みを同時に行うにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート