Is there any way to read the file if being used by another process?
XmlTextReader reader = new XmlTextReader(inpXMLfileAsString);
Is there any way to read the file if being used by another process?
XmlTextReader reader = new XmlTextReader(inpXMLfileAsString);
考えられる解決策の 1 つは、FileStream クラスを使用してファイルを読み取り専用モードで開き、ストリームをXmlTextReader クラスに渡すことです。
var fileStream = new FileStream("c:\\location\\file.xml", FileMode.Open, FileAccess.Read);
var xmlTextReader = new XmlTextReader(fileStream);
またはFile.OpenRead メソッドを直接使用します。
var xmlTextReader = new XmlTextReader(File.OpenRead("c:\\location\\file.xml"));
ファイルが読み取り専用モードで開かれている場合でも、他のプロセスは通常どおりファイルにアクセスできます。例としては、ログ ファイルが書き込み用に開かれており、何らかの (他の) プロセスによって書き込まれている間に、ログ ファイルを読み取ることが挙げられます。