C# でファイルを作成する際のファイル アクセスの競合を解決する
実行時ファイルの作成では、ファイルの存在チェックと書き込み操作を慎重に管理する必要があります。 「プロセスがファイルにアクセスできません...」という一般的なエラーは、File.Create()
を使用して作成したファイル ハンドルを適切に閉じなかったことが原因で発生することがよくあります。 これにより、ファイルは開いたままになり、以降の書き込みはできなくなります。
改善された解決策: ファイル ハンドルが閉じられていることを確認する
ここでは、ファイル ハンドルが確実に閉じられ、アクセスの競合を防ぐ洗練されたアプローチを示します。
<code class="language-csharp">string filePath = string.Format(@"{0}\M{1}.dat", ConfigurationManager.AppSettings["DirectoryPath"], costCentre); // Create and immediately close the file handle using (FileStream fs = File.Create(filePath)) { } // Write to the file without conflicts using (StreamWriter sw = File.AppendText(filePath)) { // Write your text here }</code>
FileStream
を使用して作成した後に File.Create()
を明示的に閉じると、ファイルのロックが解除され、後続の書き込み操作をエラーなしで続行できるようになります。 この方法では、制御されたファイルの作成および書き込みプロセスが提供されます。 ただし、これは長文のテキストを書く場合に最も効率的な方法ではなく、シンプルで素早い操作に最適であることを覚えておくことが重要です。
以上がC# でファイルを作成するときにファイル使用量の競合を回避するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。