رفتن به مطلب
  • 0

سوال => نحوه حذف یک "فولدر" از SD card


طاها

سوال

سلام دوستان، چجوری میشه یه فولدر رو از روی SD card حذف کرد؟

با این کد نمیشه هرچی میزنم

file.delete(file.DirRootExternal,"folder_name")
لینک ارسال
به اشتراک گذاری در سایت های دیگر

ارسال‌های توصیه شده

بله اجرا کردن این کد کاری نداره فقط کافیه ساب تعریف شده توسط باتن اجرا بشه

اینم یه نمونه کد

در ضمن میتونین ادرس فایل رو تغییر بدید مثلاً صدا هارو پاک سازی کنه

sub btn1_click
imagedelete
end sub
Sub imagedelete
    Dim r,f,sdcard2 As String
Dim fileList As List
Dim filelist2 As List
Dim imglis1 As Int
fileList = File.ListFiles(File.DirRootExternal & "/telegram/telegram images/")
fileList.Sort(True)
For imglis1 = 0 To fileList.Size-1
r = fileList.Get(imglis1)
     File.Delete(File.DirRootExternal & "/telegram/telegram images/",r)
     ToastMessageShow("لطفا تا پایان پاکسازی شکیبا باشید",True)
Next
End Sub
لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام دوست عزیز برای پاک کردن یک پوشه شما اول باید فایل های درون پوشه رو پاک کنید و سپس خود پوشه رو میتونید پاک کنید.

به این صورت که کل محتوا داخل پوشه رو در یک لیست فراخانی میکنید : 

Dim list1 As List 
		list1 .Initialize()
list1 = File.ListFiles(File.DirRootExternal & "/Your Folder/" & CurrentFolder & "/")
		
		For i = 0 To list1 .Size - 1 
			File.Delete(File.DirRootExternal & "/Your Folder/" & CurrentFolder & "/",list1 .Get(i))
		Next
 'حذف فایل ها :
File.Delete(File.DirRootExternal & "/Your Folder/" & CurrentFolder & "/","")

شما اول از این دستور برای پاک کردن محتوا فولدر استفاده کنید بعد با کد خودتون پوشه رو پاک کنید.

به جای Your Folder آدرس پوشه خودتون رو قرار بدید.

(دوستان شاید یکم غلط داشته باشه دستی نوشتم کپی نکنید مستقیاما در b4a)

 

موفق باشید.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

درود

فکر کنم میتونید از این روش هم استفاده کنید :

Sub DeleteFolderRecursive(Folder As String)
   For Each f As String In File.ListFiles(Folder)
     If File.IsDirectory(Folder, f) Then
       DeleteFolderRecursive (File.Combine(Folder, f))
     End If
     File.Delete(Folder, f)
   Next
End Sub

لینک ارسال
به اشتراک گذاری در سایت های دیگر

 

درود

فکر کنم میتونید از این روش هم استفاده کنید :

Sub DeleteFolderRecursive(Folder As String)
   For Each f As String In File.ListFiles(Folder)
     If File.IsDirectory(Folder, f) Then
       DeleteFolderRecursive (File.Combine(Folder, f))
     End If
     File.Delete(Folder, f)
   Next
End Sub

آقای ایزدی اسم فولدر رو باید بجای f بزارم؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

شما باید Sub رو تعریف کنید

بعدش توی Button Click برای حذف :

DeleteFolderRecursive(addresse folder)

البته روش آقای غفاری هم به نوعی همین کار رو انجام میده :ok:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

این ارور رو میده  :'(

میگه فولدر (Telegram) یک فولدر نیست!

09_03_2015_13_42_19.png

کدتون رو قرار بدین ببینیم دقیقا چی نوشتید , لطفا!

لینک ارسال
به اشتراک گذاری در سایت های دیگر


#Region Project Attributes

#ApplicationLabel: B4A Example

#VersionCode: 1

#VersionName:

'SupportedOrientations possible values: unspecified, landscape or portrait.

#SupportedOrientations: unspecified

#CanInstallToExternalStorage: False

#End Region

#Region Activity Attributes

#FullScreen: False

#IncludeTitle: True

#End Region

Sub Process_Globals

'These global variables will be declared once when the application starts.

'These variables can be accessed from all modules.

End Sub

Sub Globals

'These global variables will be redeclared each time the activity is created.

'These variables can only be accessed from this module.

End Sub

Sub Activity_Create(FirstTime As Boolean)

'Do not forget to load the layout file created with the visual designer. For example:

Activity.LoadLayout("Layout1")

End Sub

Sub button1_Click

DeleteFolderRecursive("telegram")

End Sub

Sub DeleteFolderRecursive(Folder As String)

For Each f As String In File.ListFiles(Folder)

If File.IsDirectory(Folder, f) Then

DeleteFolderRecursive (File.Combine(Folder, f))

End If

File.Delete(Folder, f)

Next

End Sub

Sub Activity_Resume

End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub

لینک ارسال
به اشتراک گذاری در سایت های دیگر

آقا شایان کد کل اکتیویتی رو فرستادم

#Region  Project Attributes 
	#ApplicationLabel: B4A Example
	#VersionCode: 1
	#VersionName: 
	'SupportedOrientations possible values: unspecified, landscape or portrait.
	#SupportedOrientations: unspecified
	#CanInstallToExternalStorage: False
#End Region

#Region  Activity Attributes 
	#FullScreen: False
	#IncludeTitle: True
#End Region

Sub Process_Globals
	'These global variables will be declared once when the application starts.
	'These variables can be accessed from all modules.

End Sub

Sub Globals
	'These global variables will be redeclared each time the activity is created.
	'These variables can only be accessed from this module.

End Sub

Sub Activity_Create(FirstTime As Boolean)
	'Do not forget to load the layout file created with the visual designer. For example:
	Activity.LoadLayout("Layout1")

End Sub

Sub button1_Click
	DeleteFolderRecursive("telegram")
End Sub

Sub DeleteFolderRecursive(Folder As String)
   For Each f As String In File.ListFiles(Folder)
     If File.IsDirectory(Folder, f) Then
       DeleteFolderRecursive (File.Combine(Folder, f))
     End If
     File.Delete(Folder, f)
   Next
End Sub
Sub Activity_Resume

End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub
لینک ارسال
به اشتراک گذاری در سایت های دیگر

تو این حالت ارور نمیده، ولی فولدر هم پاک نمیکنه

 

چیکار کنم دوستان؟ کسایی که همچین برنامه هایی ساختنم لطفا راهنمایی کنن :gol:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

 

خب مسیرش چجوری میشه؟؟

فایل مال برنامه خودم نیست. فولدر برنامه تلگرامو میخوام باهاش حذف کنم

 

دوست عزیز از این کد استفاده کن مطمعن باش کارت راه میوفته من پروژه پاک کن تلگرام رو با همین کد ساختم

 :)

Sub imagedelete
    Dim r,f,sdcard2 As String
Dim fileList As List
Dim filelist2 As List
Dim imglis1 As Int
fileList = File.ListFiles(File.DirRootExternal & "/telegram/telegram images/")
fileList.Sort(True)
For imglis1 = 0 To fileList.Size-1
r = fileList.Get(imglis1)
     File.Delete(File.DirRootExternal & "/telegram/telegram images/",r)
     ToastMessageShow("لطفا تا پایان پاکسازی شکیبا باشید",True)
Next
End Sub

اینم لینک برنامه

لینک ارسال
به اشتراک گذاری در سایت های دیگر

 

آقا شایان کد کل اکتیویتی رو فرستادم

#Region  Project Attributes 
	#ApplicationLabel: B4A Example
	#VersionCode: 1
	#VersionName: 
	'SupportedOrientations possible values: unspecified, landscape or portrait.
	#SupportedOrientations: unspecified
	#CanInstallToExternalStorage: False
#End Region

#Region  Activity Attributes 
	#FullScreen: False
	#IncludeTitle: True
#End Region

Sub Process_Globals
	'These global variables will be declared once when the application starts.
	'These variables can be accessed from all modules.

End Sub

Sub Globals
	'These global variables will be redeclared each time the activity is created.
	'These variables can only be accessed from this module.

End Sub

Sub Activity_Create(FirstTime As Boolean)
	'Do not forget to load the layout file created with the visual designer. For example:
	Activity.LoadLayout("Layout1")

End Sub

Sub button1_Click
	DeleteFolderRecursive("telegram")
End Sub

Sub DeleteFolderRecursive(Folder As String)
   For Each f As String In File.ListFiles(Folder)
     If File.IsDirectory(Folder, f) Then
       DeleteFolderRecursive (File.Combine(Folder, f))
     End If
     File.Delete(Folder, f)
   Next
End Sub
Sub Activity_Resume

End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub

تو رویداد باتوم کلیک اینو جایگزین کنید.

If File.Exists(File.DirRootExternal, "telegram") Then
		If File.IsDirectory(File.DirRootExternal, "telegram") Then
			DeleteFolderRecursive("telegram")
			File.Delete(File.DirRootExternal, "telegram")
		End If
	End If
لینک ارسال
به اشتراک گذاری در سایت های دیگر

دوست عزیز از این کد استفاده کن مطمعن باش کارت راه میوفته من پروژه پاک کن تلگرام رو با همین کد ساختم

  :)

Sub imagedelete
    Dim r,f,sdcard2 As String
Dim fileList As List
Dim filelist2 As List
Dim imglis1 As Int
fileList = File.ListFiles(File.DirRootExternal & "/telegram/telegram images/")
fileList.Sort(True)
For imglis1 = 0 To fileList.Size-1
r = fileList.Get(imglis1)
     File.Delete(File.DirRootExternal & "/telegram/telegram images/",r)
     ToastMessageShow("لطفا تا پایان پاکسازی شکیبا باشید",True)
Next
End Sub

اینم لینک برنامه

ممنون دوست عزیز، ولی چجوری باید اجراش کرد با باتن؟؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام

کلا پوشه ای به اسم تلگرام داری؟

اره . تلگرام نصبه. پوشه هم هست رو sd

لینک ارسال
به اشتراک گذاری در سایت های دیگر

 

بله اجرا کردن این کد کاری نداره فقط کافیه ساب تعریف شده توسط باتن اجرا بشه

اینم یه نمونه کد

در ضمن میتونین ادرس فایل رو تغییر بدید مثلاً صدا هارو پاک سازی کنه

sub btn1_click
imagedelete
end sub
Sub imagedelete
    Dim r,f,sdcard2 As String
Dim fileList As List
Dim filelist2 As List
Dim imglis1 As Int
fileList = File.ListFiles(File.DirRootExternal & "/telegram/telegram images/")
fileList.Sort(True)
For imglis1 = 0 To fileList.Size-1
r = fileList.Get(imglis1)
     File.Delete(File.DirRootExternal & "/telegram/telegram images/",r)
     ToastMessageShow("لطفا تا پایان پاکسازی شکیبا باشید",True)
Next
End Sub

کل پوشه ی تلگرام هم میتونه پاک کن؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

کل پوشه ی تلگرام هم میتونه پاک کن؟

با این کد محتویات داخل پوشه هایی که داخل پوشه telegram در حافظه داخلی موجود هست پاک سازی میشه

بعد از حذف پوشه تلگرام هنگامی که شما تلگرام رو اجرا کنید دوباره پوشه ساخته میشه تا جایی برای ذخیره کردن فایل های خودش داشته باشه

مگه هدفتون پاک سازی محتویات نیست؟اگر جز اینه میشه بپرسم که دلیل اینکه یه پوشه خالی رو پاک کنید چیه؟

کد هایی که دوستامون در پاسخ های قبلی دادن پوشه را نیز پاک میکنند(current folder)

لینک ارسال
به اشتراک گذاری در سایت های دیگر

دوست عزیز این چیه دیگه ؟

DeleteFolderRecursive("telegram")

من گفتم آدرس رو بده . تو که فقط اومدی اسم رو دادی !!!

اسم و آدرس کامل رو بده !

اون کدهای اضافی چیه که اومدی توی Button شرط گذاشتی ؟

خود Sub ای که تعریف کردیم همین شرط رو داره !

لینک ارسال
به اشتراک گذاری در سایت های دیگر

دوست عزیز این چیه دیگه ؟

DeleteFolderRecursive("telegram")

من گفتم آدرس رو بده . تو که فقط اومدی اسم رو دادی !!!

اسم و آدرس کامل رو بده !

اون کدهای اضافی چیه که اومدی توی Button شرط گذاشتی ؟

خود Sub ای که تعریف کردیم همین شرط رو داره !

خب مسیرش چجوری میشه؟؟

فایل مال برنامه خودم نیست. فولدر برنامه تلگرامو میخوام باهاش حذف کنم

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...