Linux'taki kolay olduğunu biliyorum, ancak Windows'da C# ile nasıl yapılacağını anlayamıyorum. Joker f*.txt
ile eşleşen tüm dosyaları silmek istiyorum. Buna nasıl devam edebilirim?Joker karakteri ile birden çok dosyayı silme
57
A
cevap
117
kullanabilirsiniz DirectoryInfo.EnumerateFiles
function:
var dir = new DirectoryInfo(directoryPath);
foreach (var file in dir.EnumerateFiles("f*.txt")) {
file.Delete();
}
(. Tabii ki, büyük olasılıkla hata işleme eklemek isteyeceksiniz)
8
Joker karakter aşırı yükleme ile Directory.GetFiles yöntemini kullanabilirsiniz. Bu, deseninizle eşleşen tüm dosya adlarını döndürür. Daha sonra bu dosyaları silebilirsiniz.
33
Bu zaten yanıtlandı biliyoruz
ve iyi bir cevap ama .NET 4.0 ve daha yüksek numaralı bir alternatif var. Böylece, Directory.EnumerateFiles()
kullanın:
foreach (string f in Directory.EnumerateFiles(myDirectory,"f*.txt"))
{
File.Delete(f);
}
DirectoryInfo.GetFiles()
dezavantajı bu dosyaların bir listesini döndürür olmasıdır -% 99,9 oranında büyüktür. Dezavantaj, eğer klasör on binlerce dosya içeriyorsa (ki bu nadirdir), o zaman çok yavaş olur ve eşleşen dosyalar üzerinden numaralandırılması çok daha hızlıdır.
İlgili konular
- 1. Birden çok dosyayı joker karakterlerini kullanarak kopyalama/yineleme kullanarak Wix
- 2. nuget joker karakteri TeamCity'de
- 3. Jquery joker karakter karakteri
- 4. Joker karakteri ile rm, varolan dosyaları bulamıyor
- 5. Bootstrap CSS sınıfları joker karakteri
- 6. @PropertySource içinde classpath joker karakteri
- 7. Bir desenle eşleşen birden fazla dosyayı silme
- 8. Laravel'de joker karakterleri silme
- 9. Express/node.js yönlendiricideki joker karakteri
- 10. Birden çok dosyayı nasıl taşıyorsunuz?
- 11. Dizideki birden çok dosyayı doğrulama
- 12. Birden çok kabuk komutunu joker karakterlerle çalıştırma
- 13. ASP.NET GridView için sorguda joker karakteri
- 14. Bağlantılı listeden birden çok düğüm silme java
- 15. Datalist satırını birden çok birincil anahtarla silme
- 16. Yabancı kısıtlamaları olan birden çok tablodan silme
- 17. Değişkenler kullanarak LFTP ile bir dosyayı silme
- 18. Tam metin için Postgresql önek joker karakteri
- 19. Birden çok dosyayı Gravers'e göre yükleme
- 20. Mysql Tablodan birden çok rasgele satırı silme
- 21. Bir numpy dizisinden birden çok dilim silme
- 22. C# linq birden çok düğüm silme
- 23. django içinde birden çok nesne silme
- 24. Javascript FileReader API'sı ile birden çok dosyayı tek tek okumak
- 25. Ant: aynı dosyayı birden çok yere kopyalayın
- 26. Birden çok dosyayı dosya gruplarına birleştirmek
- 27. Birden çok dosyayı karşıdan yükleme AFnetworking
- 28. XSLT Birden çok dosyayı alt dizinden dönüştürün
- 29. git Eşleşen birden çok dosyayı yok sayma
- 30. xcopy ile çok sayıda dosyayı kaydetme
"DirectoryInfo" nun "EnumerateFiles()" olduğunu unutmayın. – TrueWill
Bu cevabın neden kabul edilen cevaba bu kadar benzediğini merak eden biri varsa, bunun nedeni kabul edilen cevabın bunun ışığında yeniden yazılmasıdır. Utanç verici olan 'DirectoryInfo.GetFiles()' ın (orijinal cevap olan) kullanılması, .NET'in önceki sürümleri için bunu yapmanın tek yoludur. –