Wie kann ich eine Datei in C # löschen, z. B. C:\test.txt
die gleiche Methode anwenden wie in Batch-Dateien, z
if exist "C:\test.txt"
delete "C:\test.txt"
else
return nothing (ignore)
Dies ist mit der File- Klasse ziemlich einfach .
if(File.Exists(@"C:\test.txt"))
{
File.Delete(@"C:\test.txt");
}
File.Exists
Prüfung File.Delete
nicht durchführen, da keine Ausnahme ausgelöst wird, wenn die Datei nicht vorhanden ist. Wenn Sie jedoch absolute Pfade verwenden, müssen Sie die Prüfung durchführen, um sicherzustellen, dass die Der gesamte Dateipfad ist gültig.
@
vor dem Dateipfad? Bei mir geht es ohne.Verwenden Sie System.IO.File.Delete wie folgt :
System.IO.File.Delete(@"C:\test.txt")
Aus der Dokumentation:
quelle
An exception is thrown if the specified file does not exist
.System.IO.File.Delete(@"C:\test.txt");
genug. Vielen DankSie können den
System.IO
Namespace importieren mit:Wenn der Dateipfad den vollständigen Pfad zur Datei darstellt, können Sie deren Existenz überprüfen und wie folgt löschen:
quelle
aber
wird das gleiche tun, solange der Ordner existiert.
quelle
Wenn Sie a vermeiden möchten,
DirectoryNotFoundException
müssen Sie sicherstellen, dass das Verzeichnis der Datei tatsächlich vorhanden ist.File.Exists
erreicht dies. Eine andere Möglichkeit wäre, die folgendenPath
undDirectory
Utility-Klassen zu verwenden:quelle
quelle
quelle
Wenn Sie mit FileStream aus dieser Datei lesen und sie dann löschen möchten, müssen Sie den FileStream schließen, bevor Sie File.Delete (Pfad) aufrufen. Ich hatte dieses Problem.
quelle
using
Anweisung, bei derFile.Delete()
die außerhalb der Klammern stehen würde. In dem Beispiel, das Sie haben, sollten Sie auch afilestream.Dispose();
.Manchmal möchten Sie eine Datei in jedem Fall löschen (unabhängig von der Ausnahme löschen Sie die Datei bitte). Für solche Situationen.
Hinweis: Eine Ausnahme wird nicht ausgelöst, wenn die angegebene Datei nicht vorhanden ist.
quelle
Dies wird der einfachste Weg sein,
Thread.sleep
wird helfen, perfekt zu funktionieren, andernfalls wird es den nächsten Schritt beeinflussen, wenn wir die Datei kopieren oder schreiben.Ein anderer Weg, den ich gemacht habe, ist:
quelle