کلاس File
کلاس File، یک کلاس استاتیک است، که دارای متدهایی برای دستکاری فایلهای موجود در یک دایرکتوری میباشد. این متدها به شما اجازه کپی، حذف، بازکردن، انتقال و ایجاد یک فایل را میدهند. همانطور که خواهید دید ابتدا لازم است برای استفاده از این کلاس در قسمت فضای های نامی، فضای نام System.IO را وارد کنیم. برخی از متدهای پر کاربرد کلاس File در جول زیر آمده است :
متد | کاربرد | |
Copy() | کپی کردن یک فایل در یک مقصد خاص | |
Create() | ایجاد یک فایل در یک مسیر خاص | |
Delete() | حذف فایل | |
Open() | بازگشت یک شیء از FileStream که به وسیله آن شما میتوانید یک فایل را بنویسید یا بخوانید. | |
Move() | انتقال یک فایل به یک مقصد خاص. | |
Exists() | چک کردن اینکه آیا یک فایل در یک مسیر خاص وجود دارد یا نه؟ |
ایجاد یک فایل
با استفاده از متد ()Create میتوان یک فایل جدید ایجاد کرد. این متد یک آرگومان از نوع رشته قبول کرده که این رشته مسیری است که فایل در آن ذخیره شده است :
File.Create(@"C:Filessample.txt");
نکته اینجاست که اگر فایلی از قبل به این نام وجود داشته باشد حذف شده و فایل جدید جایگزین میشود. با استفاده از متد Exists() میتوان تست کرد که آیا مسیری که مورد نظر شماست وجود دارد، که در صورت پیدا کردن مسیر فایل یا دایرکتوری، مقدار true و در غیر اینصورت مقدار false را بر میگرداند.
if (File.Exists(@"C:Filessample.txt")) Console.WriteLine("Path already exist."); else Console.WriteLine("Path does not exist.");
حذف یک فایل
برای حذف یک فایل میتوان با استفاده از متد ()Delete و مسیری که فایل در آن قرار دارد این کار را انجام داد.
File.Delete(@"C:Filessample.txt");
کپی کردن یک فایل
برای کپی یک فایل میتوان از متد ()Copy که دارای دو پارامتر است استفاده کرد. اولین پارامتر مسیر کنونی فایل و دومین پارامتر مقصدی است که فایل باید در آن کپی شود.
File.Copy(@"C:Sourcesample.txt", @"C:Destsample.txt");
یکی دیگر از سربارگذاری های متد ()Copy دارای یک پارمتر سومی و از نوع بولی است که برای نشان داده این است که آیا فایل مورد نظر با فایل هم نام خود در مقصد جایگزین شود یا نه؟
File.Copy(@"C:Sourcesample.txt", @"C:Destsample.txt", true);
انتقال یک فایل
برای انتقال یک فایل یک از مسیر به مسیر دیگر میتوانید از متد ()Move که دو آرگومان مبداء و مقصد فایل را قبول میکند استفاده کنید.
File.Move(@"C:Sourcesample.txt", @"C:Destsample.txt");
باز کردن یک فایل
متد ()Open برای باز کردن یک فایل به کار میرود. کلمه باز کردن به معنای اجرای فایل نیست. بلکه با فراخوانی این متد یک شیء از FileStream را برگشت داده که با ساتفاده از آن یک فایل را در کلاسهای دیگر بخوانیم و بنویسیم.
FileStream fs = File.Open(@"C:Filessample.txt", FileMode.Open);
نحوه ایجاد یک FileStream را در درسهای آینده توضیح خواهیم داد. اولین سربارگذاری متد ()Open مسیر فایلی که قرار است باز شود و یک مقدار از نوع شمارشی System.IO.FileMode را قبول میکند. استفاده از FileMode.Open بدین معناست که ما میخواهیم فایل را باز کنیم. در مورد این نوع شمارشی در درسهای آینده توضیح خواهیم داد. سربارگذاری دیگر این متد آرگومان سومی که یک مقدار از نوع شمارشی System.FileAccess را قبول میکند. این پارامتر اعلام میکند که آیا شما میخواهید عملیات خواندن، نوشتن یا هر دو را بر روی فایل انجام دهید. در مورد نوشتن و خواندن یک فایل در درس آینده توضیح خواهیم داد.
با سلام و تکشر از مطالب مفید سایت
یه سوال
چرا همزمان نمیشه دستور create و copy یا move رو باهم و پشت سرهم در یک برنامه بکار برد ؟ مثلا ابتدا فایلی ساخته بشه و سپس کپی یا انتقال بشه ؟ مانند کد زیر که در موقع اجرای برنامه با خطا مواجه میشه
سلام دوست عزیز.
ممنون از لطفتون… سوالتونو توی انجمن مطرح بفرمایید ممنون میشم.
با سلام یک فایل دستوری تکست میخواستم برای حذف فایلهایی که بطور مثال نامشون ita.upk- باشه که اومدم اینجا اما از این مطالب در حد دکترا چیزی نفهمیدم