آموزش سیشارپ – بخش ۶۹
- مقدمه
آنچه را که در بخش ۶۸ام از آموزش سیشارپ با هم مرور کردیم، در رابطه کار با فایلها و نوشتن درون آنها بود. در این قسمت نیز میخواهیم با هم با سه عمل Copy، Move و Delete فایلها آشنا شویم. پس همراه با ما باشید.
- چگونه فایلی را در سیشارپ Copy کنم؟
کپی کردن فایلها در سیشارپ بسیار ساده است. این کار توسط کلاس System.IO قابل انجام است. در قدم اول، یک پوشه در درایو C با نام copiedFiles بسازید.
یک button جدید به فرم خود اضافه کنید و روی آن دابل کلیک کنید تا وارد بخش کدنویسی آن شوید. کدهای زیر را برای اعمال تنظیمات مسیرها و … کپی کنید.
string fileToCopy = “C:\test1.txt”;
string newLocation = “C:\copiedFiles\test1.txt”;
string folderLocation = “C:\copiedFiles”;
با توجه به کدهای فوق مشخص است که میخواهیم فایلی با نام test1.txt را کپی کنیم که محل آن در ریشه درایو C است. هدف ما این است که این فایل را در محل جدیدی که در متغیر newLocation تعریف شده، کپی کنیم.
یک متغیر دیگر با نام folderLocation نیز میبینید که تنها مسیر پوشه را در آن قرار دادهایم؛ هدف ما از ایجاد این متغیر این است که میخواهیم وجود یا عدم وجود چنین پوشهای را با استفاده از دستور if بررسی کنیم تا در صورت عدم وجود آن، اخطار لازم را به کاربر نشان دهیم.
برای کپی کردن یک فایل، کافیست که از متد Copy() در کلاس ذکر شده استفاده کنیم؛ یعنی:
System.IO.File.Copy(fileToCopy, newLocation);
در بین پرانتزهای متد Copy()، شما میبایست فایل مورد نظرتان و محل جدید را بعنوان آرگومان تعیین کنید. در نهایت، کدها باید همانند زیر نوشته شوند (همراه با بررسی وجود پوشه و فایل)
کدهای فوق ابتدا بررسی میکند که آیا پوشه مورد نظر وجود دارد یا نه؛ درصورت وجود، اقدام به بررسی وجود فایل میکنیم. اگر همه موارد به اصطلاح OK بودند، اقدام به کپی کردن فایل میکنیم. کافیست یکبار این برنامه را امتحان کنید تا فایل کپی شده را ببینید.
- چگونه فایلی را در سیشارپ Move کنیم؟ (همان عمل Cut کردن)
برای اینکه فایلی را جابجا یا اصطلاحاً Move کنید، از متد Move() استفاده میکنیم. شکل نحوی آن بدین صورت است:
System.IO.File.Move(fileToMove, fileLocation);
سایر موارد همانند کپی کردن است و بهٰراحتی میتوانید خودتان اقدام به امتحان آن کنید.
- چگونه فایلی را در سیشارپ Delete کنیم؟
عمل Delete یا حذف یک فایل نیز همانند Copy و Move کردن فایل هاست؛ تنها کافیست که از متد Delete استفاده کنید. شکل نحوی آن بدین صورت است:
System.IO.File.Delete(file_path);
در مابین پرانتزهای متد، میبایست آدرس کامل فایل را قرار دهید تا اقدام به حذف فایل کنید. هنگام امتحان کردن این متد حواستان را کاملاً جمع کنید؛ چون این متد واقعاً فایل را حذف میکند، و آن را حتی در Recycle Bin پیدا نخواهید کرد!
salam agha khaste nabashi man to barname mashin hesab b ye moshkel bar khordam barname o k ejra mikonam adado bar ax type mikone yani
mikham benevisam
123
minevise
321
adade dovomi k vared mikonamo miare samte chap 12 mikone 21
سلام دوست عزیزم،
احتمالاً توی نوشتن کدها دچار مشکل شدید. کدهایتان را قدم به قدم و خط به خط بررسی کنید؛ متوجه خواهید شد که مشکلی در کدها وجود دارد.
موفق باشید!
با احترام
من می خوام فقط فایل هایی با پسوندtxtرا کپی کنم داخل یک تکست باکس.چه جوری این کار را انجام بدم؟ممنون
سلام وقت بخیر دوست عزیز
من یه برنامه باسی شارپ نوشتم که بدون اررور اجرا میشه ولی وقتی فایل رو تو یه کامپیوتر دیگه اجرا میکنم و ادرس دهی رو عوض میکنم باز اررور میده.