Ошибка доступа к файлу - C# (187939)
Формулировка задачи:
Здравствуйте!
Есть асинхронный сервер по сбору данных. Необходимо все получаемые данные писать в файл. Если файл создан, то никаких проблем не происходит. Но если файла нет, то вылетает ошибка что файл занят другим процессом, при этом файл создается но в его не идет запись пока не перезапустить прогу. Может кто-нибудь сталкивался с данной проблемой?
Пример функции записи в файл ниже.
private void TestWriteFile(Object obj)
{
try
{
lock (thisLock)
{
DateTime dtDateTime = DateTime.Now;
String str = dtDateTime.ToLongTimeString() + " " + (String)obj;
string FileName = "TestWriteFile.txt";
if (!File.Exists(FileName))
{
File.Create(FileName);
}
FileStream fFile = new FileStream(FileName, FileMode.Append, FileAccess.Write);
BufferedStream bufStream = new BufferedStream(fFile);
StreamWriter sWrite = new StreamWriter(bufStream);
for (int i = 0; i < 10; i++)
{
sWrite.WriteLine(str);
}
sWrite.Flush();
sWrite.Close();
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}Решение задачи: «Ошибка доступа к файлу»
textual
Листинг программы
using (FileStream fFile = new FileStream(FileName, FileMode.Append, FileAccess.Write))
using (BufferedStream bufStream = new BufferedStream(fFile))
using (StreamWriter sWrite = new StreamWriter(bufStream))
{
for (int i = 0; i < 10; i++)
{
sWrite.WriteLine(str);
}
}