Использование System.IO.Delete для удаления определенных файлов из каталога?

У меня есть 2 изображения в папке с именем Pics..... Image1.jpg и Image2.jpg.

Какой код я должен разместить внутри кнопки «Отправить», чтобы просто удалить Image1.jpg, расположенный здесь «~/Pics/Image1.jpg»

Любая помощь будет здорово!!!


person Etienne    schedule 01.05.2009    source источник


Ответы (4)


Вам нужно использовать System.IO.File.Delete не System.IO.Delete

string path = "~/Pics/Image1.jpg";
System.IO.File.Delete(Server.MapPath(path))
person inspite    schedule 01.05.2009
comment
Спасибо за ответ, это работает. Но что я должен сделать в коде, чтобы просмотреть все мои изображения в папке «Мои изображения», а затем удалить все изображения, которые содержат 1 перед расширением, таким как 1. - person Etienne; 02.05.2009
comment
Вы можете использовать что-то вроде System.IO.Directory.GetFiles(~/Pics, 1.), чтобы вернуть массив соответствующих файлов в этом каталоге. Затем вы можете просмотреть эти файлы и удалить каждый из них. - person Lance McNearney; 02.05.2009

Синтаксис:

System.IO.File.Delete(Server.MapPath("~/Pics/Image1.jpg"));

Однако вам нужно будет убедиться, что пользователь, под которым работает ваше веб-приложение, имеет права на удаление (изменение) файла, который вы удаляете.

person Jason Williams    schedule 01.05.2009
comment
Как бы я дал такие разрешения? - person Etienne; 02.05.2009
comment
Это зависит от настроек вашего хоста, но вам нужно будет выяснить, от имени какого пользователя работает ваше приложение, и изменить разрешения для папки Pics на диске. Обычно это делается через какую-то панель управления, предоставленную вашим хостом. Если у вас есть терминальный или физический доступ к машине, вы можете щелкнуть правой кнопкой мыши папку и перейти на вкладку безопасности, чтобы внести эти изменения. - person Jason Williams; 02.05.2009

Попробуй это:

String FileName = "Image1.jpg";
System.IO.File.Delete(Server.MapPath(("~/Pics/") + FileName));
person Pritpal Singh Matharu    schedule 13.06.2011

я бы попробовал:

String FilePath;
FilePath = Server.MapPath("~/Pics/Image1.jpg");
File.Delete(FilePath);
person Baget    schedule 01.05.2009