8
using (TextWriter writer = File.CreateText(path2))
                        {
                            writer.Write(SomeText);
                        }

这是一段有问题的代码。当我写入文件时,没关系,直到其他应用程序打开文件。然后我得到错误。

如何编写可以同时读取的文件?

4

1 回答 1

14

您需要指定FileShare.Read

using (Stream stream = File.Open(path2, FileMode.OpenOrCreate, FileAccess.Write, FileShare.Read))
using (TextWriter writer = new StreamWriter(stream))
{
    writer.Write(SomeText);
}

它将允许其他进程打开文件进行读取,而不是写入。

于 2012-09-03T15:40:47.213 回答