vb.net Alt klasörleri sildirme

ExcFire

Katılımcı Üye
30 Tem 2016
594
0
Kod:
  If System.IO.File.Exists("C:\klasör 1\dosya.txt") = True Then
                My.Computer.FileSystem.DeleteFile("C:\klasör 1\dosya.txt")

            ElseIf System.IO.File.Exists("C:\klasör 2\dosya.txt") = True Then
                My.Computer.FileSystem.DeleteFile("C:\klasör 2\dosya.txt")

            ElseIf System.IO.File.Exists("C:\klasör 3\dosya.txt") = True Then
                My.Computer.FileSystem.DeleteFile("C:\klasör 3\dosya.txt")

            ElseIf System.IO.File.Exists("C:\klasör 4\dosya.txt") = True Then
                My.Computer.FileSystem.DeleteFile("C:\klasör 4\dosya.txt")

            ElseIf System.IO.File.Exists("C:\klasör 5\dosya.txt") = True Then
                My.Computer.FileSystem.DeleteFile("C:\klasör 5\dosya.txt")


            Else
                'dosya yoksa
            End If

Bunun gibi 50 tane klasör ve o kadar kod cpu çok harcar bunun için kısa bir kod varmı?

Şöyle denedim olmadı Başka ne yapabilirim?

Kod:
          If System.IO.File.Exists("C:\klasör*\dosya.txt") = True Then
                My.Computer.FileSystem.DeleteFile("C:\klasör*\dosya.txt")
Else

End İf
 

lealperen

Üye
30 Haz 2018
73
0
Aydın
Bunu bir deneyebilirsiniz eski kodlarından birini sizin için düzenledim ama... test etmedim yani
Kod:
Imports System
Imports System.IO
Public Class Test
Public Shared Sub Main()
Try 
Dim dirs As String() = Directory.GetFiles("c:\", "klasör*")
Dim dir As String
For Each dir In dirs
If System.IO.File.Exists(dir+"\dosya.txt") Then 
My.Computer.FileSystem.DeleteFile(dir+"\dosya.txt") 
Else
 
End İf
Next 
Catch e As Exception
Console.WriteLine("The process failed:
 {0}", e.ToString())
End Try
End Sub
End Class
"klasör*" yerine "klasör ?" de yazabilirsiniz tam olarak ne istediğinize göre

Performans konusunda bu gibi durumlarda cpu dan ziyade serbest ram zarar gorur. O yüzden endişe etmenize de gerek yok ama evet ilk kodunuz code sanity adına biraz uçuk olmuş
 
Son düzenleme:
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.