حذف کردن نوع مشخصی از فایل های یک فولدر در ASP.Net
یکشنبه 29 شهریور 1394در این مقاله همراه با یک مثال نحوه حذف کردن یک فایل از یک directory/folder را شرح می دهیم. می توانید تمام فایل ها با پسوند مشخص (برای مثال : فایل با پسوند jpg ,.png,.docx. و...) را از دایرکتوری مشخص و زیر شاخه های آن به صورت بازگشتی در ASP.Net با استفاده از #C حذف کنید.
پیاده سازی
یک فولدر/دایرکتوری با نام MyContents در root ایجاد کنید. تعدادی فایل و فولدر در این فولدر قرار دهید. همچنین تعدادی فایل وفولدر در زیرشاخه آن قرار دهید. حال تمام فایل های jpg. را ازفولدرMyContent و زیرشاخه آن حذف کنید.
بخش ASP.Net
کد HTML
<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div> <asp:Button ID="btnDelete" runat="server" Text="Delete" OnClick="btnDelete_Click" /> </div> </form> </body> </html>
کد #C
برای حذف کردن همه ی فایل ها و زیرشاخه های آن از دایرکتوری در code behind فایل default.aspx.cs کد زیر را بنویسید.
فضای نام زیر را به پروژه خود اضافه کنید.
using System.IO Then write the code as: protected void btnDelete_Click(object sender, EventArgs e) { DirectoryInfo directory = new DirectoryInfo(Server.MapPath("~/MyContents/")); EmptyFolder(directory); } private void EmptyFolder(DirectoryInfo directory) { foreach (FileInfo file in directory.GetFiles()) { if (file.Extension.ToLower().Equals(".jpg")) { file.Delete(); } } foreach (DirectoryInfo subdirectory in directory.GetDirectories()) { EmptyFolder(subdirectory); } }
همانطور که در شکل زیر نشان داده شده است فایل jpg. زیر را از فولدر My Contents حذف کرده ایم.
بخش ASP.Net VB
کد HTML
<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div> <asp:Button ID="btnDelete" runat="server" Text="Delete" /> </div> </form> </body> </html>
کد ASP.Net VB
برای حذف کردن همه ی فایل ها و زیرشاخه های آن از دایرکتوری، در code behind فایل default.aspx.cs کد زیر را بنویسید.
فضای نام زیر را به پروژه خود اضافه کنید.
Import syste.IO
Then write the code as: Protected Sub btnDelete_Click(sender As Object, e As EventArgs) Handles btnDelete.Click Dim directory As New DirectoryInfo(Server.MapPath("~/MyContents/")) EmptyFolder(directory) End Sub Private Sub EmptyFolder(directory As DirectoryInfo) For Each file As FileInfo In directory.GetFiles() If file.Extension.ToLower().Equals(".jpg") Then file.Delete() End If Next For Each subdirectory As DirectoryInfo In directory.GetDirectories() EmptyFolder(subdirectory) Next End Sub
- ASP.net
- 3k بازدید
- 1 تشکر