C#.NET で XML ファイルのコンテンツを次のようなスニペットに置き換えようとすると、次のようになります。
string file = Path.GetTempFileName(); // pretend this is a real file
string tmpFile = Path.GetTempFileName();
using (var writer = XmlWriter.Create(File.Create(tmpFile)))
{
writer.WriteStartElement("root");
for (int i = 0; i < 100; i++)
{
writer.WriteElementString("test", null,
"All work and no play makes Jack a dull boy");
}
writer.WriteEndElement();
}
File.Delete(file);
File.Move(tmpFile, file);
... ファイルが別のプロセスによって既に開かれていることを示す System.IO.IOException が発生します。