如何删除文件

时间:2009-10-19 23:28:27

标签: c#

嗨我有winform,我用它来显示图像(我加载到图片框,我在运行时创建这个图片框)

当我选择任何一个图像并将其删除时(我想从文件夹中删除它)但是当我删除时出现问题:   File.Delete(path_OF_Image);

C#给我的消息无法删除此文件,因为有进程使用此文件。

但是我处理了所有的图片框或容器(都有我的照片框)

但问题仍然存在。

3 个答案:

答案 0 :(得分:8)

我猜你正在使用文件名直接加载图像(即Image.FromFile);这可能是有问题的,因为.NET挂在GDI +库使用的资源上,因此我建议首先加载文件字节,然后以这种方式初始化图像。例如:

byte[] imageBytes = File.ReadAllBytes(fileName);
Image image;
using (MemoryStream ms = new MemoryStream(imageBytes))
{
   image = Image.FromStream(ms);
}

答案 1 :(得分:0)

之前,删除图像尝试将PictureBox设置为空,然后删除,或者制作一个tmp,只是为了在删除操作之前看到图像。

见到你

答案 2 :(得分:0)

这里的问题是:文件仍处于打开状态,必须先将其关闭才能删除它。