کلاس FileInfo
کلاس FileInfo کاملاً شبیه کلاس File است و هر دوی آنها دارای یک هدف برای دستکاری فایلها میباشند. تفاوت آنها این است که کلاس fileInfo دارای متد استاتیک نیست بنابراین لازم است که ابتدا از آن نمونه ایجاد کنید. شیء ایجاد شده از FileInfo نشان دهنده یک فایل در دیسک است.
FileInfo file = new FileInfo(@"C:Filessample.txt");
سازنده مسیر فایل را قبول میکند. از آنجاییکه مسیر فایل را در داخل سازنده قرار دادهایم، فراخوانی متدهای ()Create() ،Delete() ،Move و ()Copy راحتتر است چون هنگام فراخوانی مجبور نیستیم مسیر مذکور را در هر کدام از متدها دوباره نویسی کنیم. به عنوان مثال در کد زیر تفاوت بین کلاس File و FileInfo وقتی که متد ()Create فراخوانی میشود نشان داده شده است :
FileInfo file = new FileInfo(@"C:Filessample.txt"); file.Create();
File.Create(@"C:Filessample.txt");
و در زیر تفاوت بین انتقال و کپی یک فایل نشان داده شده است :
file.CopyTo(@"C:Destsample.txt"); file.MoveTo(@"C:Destsample.txt");
File.Copy(@"C:Sourcesample.txt", @"C:Destsample.txt"); File.Move(@"C:Sourcesample.txt", @"C:Destsample.txt");
به این نکته توجه کنید که در شیء FileInfo ازمتدهای ()CopyTo و ()MoveTo به جای ()Copy و ()Move استفاده کردهایم و فقط مقصد را نشان دادهایم چون از قبل و هنگام ایجاد شیء مبدأ را مشخص کردهایم. برخی از متدهای کلاس FileInfo در جدول زیر ذکر شدهاند.
متد | توضیح | |
Create() | یگ فایل جدید ایجاد میکند. | |
Delete() | فایل وابسته به شیء FileInfo را حذف میکند. | |
CopyTo() | فایل را در مسیر مقصد کپی میکند. یکی از سربارگذاری های این متد یک مقدار بولی دریافت میکند و نشان میدهد که آیا فایل موجود در مقصد را جایگزین کند. | |
MoveTo() | فایل را به مقصد مشخصی انتقال میدهد. | |
Open() | یک FileStream ایجاد میکند که میتواند در خواندن و نوشتن فایل مورد استفاده قرار گیرد. |
برخی از خواص کلاس FileInfo در جدول زیر آمده است :
خاصیت | توضیح | |
CreationTime | زمان ایجاد فایل را نشان میدهد. نتیجه را به عنوان یک شیء DateTime بر میگرداند. | |
Directory | یک DirectoryInfo را بر میگرداند که شامل اطلاعات پوشهای است که فایل در آن قرار دارد. | |
Exists | میگوید که آیا مسیر تعیین شده در سازنده در سیستم فایل موجود است یا نه؟ | |
Extention | نام پسوند یک فایل را به عنوان رشته بر میگرداند (“.txt”). | |
IsReadOnly | میگوید که آیا فایل فقط خواندنی است یا نه؟ | |
LastAccessTime | آخرین زمان دسترسی به فایل را نشان میدهد. مقدار را به عنوان یک شیء DateTime بر میگرداند. | |
LastWriteTime | آخرین زمانی که محتویات فایل دستکاری شده است را نشان میدهد. مقدار را به عنوان یک شیء DateTime بر میگرداند. | |
Length | سایز فایل را بر حسب بایت بر میگرداند. | |
Name | نام فایل را بر میگرداند (sample.txt). | |
FullName | نام و مسیر کامل فایل را بر میگرداند (C:Filessample.txt). |
شی FileInfo دارای خواص و متدهای بیشتری میباشد که به مرور در درسهای آینده در مورد آنها بحث میکنیم.
از صمیم قلب تشکر میکنم.
مرسی عزیز