PDA

View Full Version : فرق fileinfo و FileStream



ali_mnkt
پنج شنبه 26 مرداد 1391, 11:40 صبح
سلام

دوستان من می خواستم فرق بین کلاس Fileinfo و filestream رو بدونم . هر دو اینها قابلیت خواندن و نوشتن فایل ها رو دارن و حتی اضافه کردن مقادیر بع انتهای فایل ها ، خوب پس فرق اصلی اینها چیه و یا کدوم یه قابلیت داره که اون یکی نداره ؟

mohsen_f_b
پنج شنبه 26 مرداد 1391, 11:51 صبح
سلام

دوست عزیز کار FileInfo فقط و فقط نمایش اطلاعات در مورد آن فایل هستش. کار خواندن و نوشتن با FileStream انجام می شود.
FileInfo = بدست آوردن اطلاعات در مورد یک فایل و اعمال روی فایل


FileInfo JFile = new FileInfo(@"C:\test.txt");
using (FileStream JStream = JFile.Open(FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None))
{
StreamReader reader = null;
StreamWriter writer = null;
try
{
int n;
reader = new StreamReader(JStream);
string line = reader.ReadLine();
int.TryParse(line, out n);

n = n + 1;

writer = new StreamWriter(JStream);
JStream.Seek(0, SeekOrigin.Begin);
writer.WriteLine(n);
writer.Flush();
}
catch (Exception x)
{
string message = string.Format("Error while processing the file. {0}", x.Message);
System.Windows.Forms.MessageBox.Show(message);
}

reader = null;
writer = null;
}



موفق باشید

ali_mnkt
پنج شنبه 26 مرداد 1391, 12:20 عصر
سلام

دوست عزیز کار FileInfo فقط و فقط نمایش اطلاعات در مورد آن فایل هستش. کار خواندن و نوشتن با FileStream انجام می شود.
FileInfo = بدست آوردن اطلاعات در مورد یک فایل و اعمال روی فایل


FileInfo JFile = new FileInfo(@"C:\test.txt");
using (FileStream JStream = JFile.Open(FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None))
{
StreamReader reader = null;
StreamWriter writer = null;
try
{
int n;
reader = new StreamReader(JStream);
string line = reader.ReadLine();
int.TryParse(line, out n);

n = n + 1;

writer = new StreamWriter(JStream);
JStream.Seek(0, SeekOrigin.Begin);
writer.WriteLine(n);
writer.Flush();
}
catch (Exception x)
{
string message = string.Format("Error while processing the file. {0}", x.Message);
System.Windows.Forms.MessageBox.Show(message);
}

reader = null;
writer = null;
}



موفق باشید


مرسی از راهنماییت .

خوب حالا فرق کلاس File f با Filestream چیه ؟ کلاس File هم متد هایی مثل create() , writealltext(),appendtext , ... داره که می شه هم روی فایل ها نوشت ، هم تغییرات داد و هم یک فایل رو ساخت !!!!!!!!!!!!!