C# winfom 无法删除文件正在使用中

[复制链接]
查看11 | 回复5 | 2008-8-11 12:24:42 | 显示全部楼层 |阅读模式
我想更换图片 更换后删除这个文件
但是file.Delete()后 提示正在使用中
可能父窗体 还有子窗体 都有引用这个文件
怎么样才能 删除这个使用中的文件呢
filestream?

回复

使用道具 举报

千问 | 2008-8-11 12:24:42 | 显示全部楼层
更换图片具体是怎么更换的?是不是从图片中读取图像然后想删除这个图像?可能是这个原因,如果不是那就再补充资料吧。.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 Syste
回复

使用道具 举报

千问 | 2008-8-11 12:24:42 | 显示全部楼层
如果你使用了FileStream要先把FileStream给Close掉。FileStream fs = new FileStream(xx,xx,xx);//xx是参数;......//处理fs.Close();
回复

使用道具 举报

千问 | 2008-8-11 12:24:42 | 显示全部楼层
在删除前确认已经没有线程在使用它了,不要猜测可能是谁在使用,要确定使用后释放(如读取后要关闭流)
回复

使用道具 举报

千问 | 2008-8-11 12:24:42 | 显示全部楼层
在你更换图片之后,把引用旧文件改成引用新文件不就行了。
回复

使用道具 举报

千问 | 2008-8-11 12:24:42 | 显示全部楼层
先选择一个新文件,让所有的窗体引用这个新文件,然后再进行删除
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行