Ik sla bestanden tijdens runtime op in een specifieke map. Na een tijdje wil ik ze programmatisch verwijderen. Hoe verwijder ik alle bestanden uit een specifieke map?
Antwoord 1, autoriteit 100%
string[] filePaths = Directory.GetFiles(@"c:\MyDir\");
foreach (string filePath in filePaths)
File.Delete(filePath);
Of in een enkele regel:
Array.ForEach(Directory.GetFiles(@"c:\MyDir\"), File.Delete);
Antwoord 2, autoriteit 11%
Je kunt het doen via FileInfoof DirectoryInfo:
DirectoryInfo di = new DirectoryInfo("TempDir");
di.Delete(true);
En maak dan de map opnieuw
Antwoord 3, autoriteit 7%
System.IO.DirectoryInfo myDirInfo = new DirectoryInfo(myDirPath);
foreach (FileInfo file in myDirInfo.GetFiles())
{
file.Delete();
}
foreach (DirectoryInfo dir in myDirInfo.GetDirectories())
{
dir.Delete(true);
}
Antwoord 4, autoriteit 4%
Voeg de volgende naamruimte toe,
using System.IO;
en gebruik de klasse Directory
om naar de specifieke map te gaan:
string[] fileNames = Directory.GetFiles(@"your directory path");
foreach (string fileName in fileNames)
File.Delete(fileName);
Antwoord 5, autoriteit 2%
Probeer dit:
foreach (string file in Directory.GetFiles(@"c:\directory\"))
File.Delete(file);
Antwoord 6
Je kunt zoiets doen als:
Directory directory = new DirectoryInfo(path);
List<FileInfo> fileInfos = directory.EnumerateFiles("*.*", SearchOption.AllDirectories).ToList();
foreach (FileInfo f in fileInfos)
File.Delete(f.FullName);