エラー内容
IOException: Sharing violation on path XXXX System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, Boolean anonymous, FileOptions options) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.IO/FileStream.cs:320) System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access, FileShare share) (wrapper remoting-invoke-with-check) System.IO.FileStream:.ctor (string,System.IO.FileMode,System.IO.FileAccess,System.IO.FileShare)
StreamReader を使用して、ファイルを読み込もうとした時に
上記のエラーが発生することがあります
これは、読み込もうとしたファイルが、
他のアプリで使用されている場合に発生します
対応方法
var sr = new StreamReader( path, Encoding.UTF8 );
例えば、このようなコードでファイルを読み込もうとしている場合は、
var fs = new FileStream( path, FileMode.Open, FileAccess.Read, FileShare.ReadWrite ); var sr = new StreamReader( fs, Encoding.UTF8 );
このように、FileStream のインスタンスを作成して使用することで
エラーを回避することができます