C# winfom 无法删除文件正在使用中
发布网友
发布时间:2024-10-19 20:07
我来回答
共1个回答
热心网友
时间:2024-12-02 07:29
更换图片具体是怎么更换的?是不是从图片中读取图像然后想删除这个图像?
可能是这个原因,如果不是那就再补充
资料
吧。
.NET中的
Image.FromFile
方法会锁住文件
解决方法:
第一种方法,在要进行文件操作前将Image对象销毁.
PictureBox
picbox;
if(picbox.Image!=null)picbox.Image.Disponse();
第二种方法,就是在加载图像的时候用一种方法替代:
System.Drawing.Image
img
=
System.Drawing.Image.FromFile(filepath);
System.Drawing.Image
bmp
=
new
System.Drawing.Bitmap(img.Width,
img.Height,
System.Drawing.Imaging.PixelFormat.Format32bppArgb);
System.Drawing.Graphics
g
=
System.Drawing.Graphics.FromImage(bmp);
g.DrawImage(img,
0,
0);
g.Flush();
g.Dispose();
img.Dispose();
//下面开始使用bmp作为显示的Image对象
一直以来用的是上面的第二种方法.今天实验出来突然有种方法更加简单:
System.Drawing.Image
img
=
System.Drawing.Image.FromFile(filepath);
System.Drawing.Image
bmp
=
new
System.Drawing.Bitmap(img);
img.Dispose();
//下面开始使用bmp作为显示的Image对象
上面引用我的一篇
博客
,参见参考资料。