首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > VB Dotnet >

文件操作有关问题

2011-12-23 
文件操作问题环境vs2005专业版winform窗口上有一个PictureBox,名字为pic1执行如下操作pic1.imageimage.fr

文件操作问题
环境vs2005专业版
winform窗口上有一个PictureBox,名字为pic1
执行如下操作
pic1.image=image.fromfile( "c:\temp\a1.jpg ")
pic1.image=image.fromfile( "c:\temp\a2.jpg ")
pic1.image=nothing

my.Computer.FileSystem.MoveFile( "c:\temp\a1.jpg ", "c:\temp\a3.jpg ")
my.Computer.FileSystem.MoveFile( "c:\temp\a1.jpg ", "c:\temp\a3.jpg ")

运行到移动文件时提示错误,文件已经打开,估计是image.fromfile打开的,请问如何关闭已经打开的文件

[解决办法]
pic1.image=image.fromfile( "c:\temp\a1.jpg ")
是自己释放的,肯定没有关系
关键是
-------------------------------
my.Computer.FileSystem.MoveFile( "c:\temp\a1.jpg ", "c:\temp\a3.jpg ")
my.Computer.FileSystem.MoveFile( "c:\temp\a1.jpg ", "c:\temp\a3.jpg ")

----------------------------
my.Computer.FileSystem.MoveFile( "c:\temp\a1.jpg ", "c:\temp\a3.jpg ")
打开文件并移动
你不关闭流
就my.Computer.FileSystem.MoveFile( "c:\temp\a1.jpg ", "c:\temp\a3.jpg ")
就出问题了


[解决办法]
这个包装好的文件操作函数应该没问题,也没有什么流!可能你的文件引用并没释放,使用pic1.image.dispose();


[解决办法]
pic1.image.dispose()
[解决办法]
pic1.image.dispose()就关闭了
dispose() 相当于一个垃圾回收器

热点排行