PDA

View Full Version : سوال: پیغام خطا هنگام خواندن فایل - The process cannot access the file '...' because it is being used



Mahdi_110
چهارشنبه 08 دی 1395, 21:15 عصر
سلام در قطعه کد زیر قصد داریم تا یک فایل را مقدار دهی کنیم .
1 - ابتدا چک می کنیم که فایل وجود دارد یا خیر و در غیر اینصورت آنرا ایجاد مینماییم .
2 - فایل ایجاد شده را برای نوشتن باز میکنیم .
3 - عملیات نوشتن روی فایل را انجام میدهیم .
زمانیکه فایل وجو داشته باشد کدها به درستی انجام میشوند اما متاسفانه زمانی که فایل وجود نداشته باشد و بعد از ایجاد فایل در هنگام بازنمودن فایل برای نوشتن پیغام میدهد که فایل و مسیر آن در اشغال فعالیت دیگری میباشند در قسمتی که با (؟) نشان داده شده است چه کدی بایستی اضافه کرد تا فایل و مسیر آزاد شده و فایل را بتوان در چند خط پایین تر برای نوشتن دوباره باز نمود ؟ لطفا با ذکر مثال توضیح دهید

if (File.Exists("C:\\File1.txt"))
{
MessageBox.Show("فایل وجود دارد");
}
else
{
string CName = @"C:\\File1.txt";
File.CreateText(CName);

// ?????
}

string fName = @"C:\File1.txt";
StreamWriter wf = new StreamWriter(fName);

wf.Close();
متن پیغام :
The process cannot access the file 'C:\File1.txt' because it is being used by another process.

Mahmoud.Afrad
پنج شنبه 09 دی 1395, 01:33 صبح
string fileName = "...";
StreamWriter wf;
if (File.Exists(fileName))
{
wf = new StreamWriter(fileName);
}
else
{
wf= File.CreateText(fileName);
}