Reputation: 4233
using (TextWriter writer = File.CreateText(path2))
{
writer.Write(SomeText);
}
This is problematic piece of code. When I write to file, it's ok, until other app open the file. Then I get error.
How to write files that can be read in same time?
Upvotes: 8
Views: 5687
Reputation: 292685
You need to specify FileShare.Read
:
using (Stream stream = File.Open(path2, FileMode.OpenOrCreate, FileAccess.Write, FileShare.Read))
using (TextWriter writer = new StreamWriter(stream))
{
writer.Write(SomeText);
}
It will allow other processes to open the file for reading, not for writing.
Upvotes: 14