Как я могу удалить файл в C #, например C:\test.txt
, хотя применять такой же метод, как в пакетных файлах, например,
if exist "C:\test.txt"
delete "C:\test.txt"
else
return nothing (ignore)
Это довольно просто, используя класс File .
if(File.Exists(@"C:\test.txt"))
{
File.Delete(@"C:\test.txt");
}
File.Exists
проверку, поскольку File.Delete
не выдает исключение, если файл не существует, хотя, если вы используете абсолютные пути, вам понадобится проверка, чтобы убедиться, что весь путь к файлу действителен.
@
путь до файла? Для меня это работает без.Используйте System.IO.File.Delete следующим образом:
System.IO.File.Delete(@"C:\test.txt")
Из документации:
источник
An exception is thrown if the specified file does not exist
.System.IO.File.Delete(@"C:\test.txt");
достаточно. СпасибоВы можете импортировать
System.IO
пространство имен, используя:Если путь к файлу представляет полный путь к файлу, вы можете проверить его существование и удалить его следующим образом:
источник
но
будет делать то же самое, пока существует папка.
источник
Если вы хотите избежать a,
DirectoryNotFoundException
вам нужно убедиться, что каталог файла действительно существует.File.Exists
выполняет это. Другим способом было бы использоватьPath
иDirectory
вспомогательные классы , как так:источник
источник
источник
Если вы читаете из этого файла, используя FileStream, а затем хотите удалить его, убедитесь, что вы закрыли FileStream, прежде чем вызывать File.Delete (путь). У меня была эта проблема.
источник
using
утверждение, гдеFile.Delete()
бы выйти за скобки. В примере, который вы имеете, вы также должны сделатьfilestream.Dispose();
.Иногда вы хотите удалить файл в любом случае (независимо от исключения, пожалуйста, удалите файл). Для таких ситуаций.
Примечание. Исключение не выдается, если указанный файл не существует.
источник
Это будет самый простой способ,
Thread.sleep
поможет отлично работать, иначе это повлияет на следующий шаг, если мы будем копировать или записывать файл.Я так и сделал,
источник