hottabxp
@hottabxp
Сначала мы жили бедно, а потом нас обокрали..

C# После загрузки картинки в picturebox удалить её с диска?

Загружаю картинку в picturebox. Потом её хочу удалить с диска. Но вылазит исключение, что файл занят. Уже перед удаление делал так:
picturebox1.Image = null;
- не помогает. Как быть? Спасибо.
Загружаю так:
picturebox1.load(путь_к_картинке);
  • Вопрос задан
  • 4902 просмотра
Решения вопроса 1
AlekseyNemiro
@AlekseyNemiro
full-stack developer
Работать с файлами лучше через FileStream, чтобы полностью контролировать весь процесс:
string filePath = "123.jpg";

using (var file = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Inheritable))
{
  pictureBox1.Image = Image.FromStream(file);
}

File.Delete(filePath);

Многие упрощенные методы работы с файлами нередко блокируют доступ к файлам. Такие методы имеет смысл использовать только для одноразовых файловых операций (когда нужно один раз прочитать или записать данные и не более этого).
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы