问题描述
闲来无事看到一段代码:using(FileStreamfileStream=newFileStream(string,FileMode.Open,FileAccess.Read,FileShare.Read)){XXXXXXXtry{}catch{}XXXXXXXXXXXXXXXXXXX}不知道这是什么语法现象,什么含义呢?
解决方案
解决方案二:
filestream是类库system.io里的,所以用using引用实现的是:用filestream将读取文件信息到文件流里
解决方案三:
释放资源
解决方案四:
引用楼主stockstar0919的帖子:
闲来无事看到一段代码:using(FileStreamfileStream=newFileStream(string,FileMode.Open,FileAccess.Read,FileShare.Read)){XXXXXXXtry.{}catch{}XXXXXXXXXXXXXXXXXXX}不知道这是什么语法现象,什…
using语句保证fileStream在作用域结束后被disposed.因为文件是非托管资源,需要用这条语句保证它能及时被回收.具体的可以查下msdn.
解决方案五:
不知道你想问的是哪段FileStream是文件流using代码块是保证及时释放资源
解决方案六:
不好意思,是我没有说清楚.我想问的是,这里使用了using是什么目的,看上面几位热心大侠的回答.应该是用来做资源释放时候的一个标示.那如果没有使用using,而直接写成FileStreamfileStream=newFileStream(string,FileMode.Open,FileAccess.Read,FileShare.Read)XXXXXXXtry.{}catch{}XXXXXXXXXXXXXXXXXXX会有什么风险吗?或者是其他不合适的地方?谢谢~~~~
解决方案七:
FileStream
解决方案八:
FileStream是文件流using代码块是保证及时释放资源没风险,只是及时回收对性能有好处比如你有了垃圾就丢了不把垃圾放在内存里(因为文件是非托管代码)接分谢谢
解决方案九:
FileStreamfileStream=newFileStream(string,FileMode.Open,FileAccess.Read,FileShare.Read)fileStream没有关闭,你最后肯定要关闭吧,fileStream.Close,如果在关闭之前就抛出异常,那这个文件就一直没关闭了,所以一般写成tryFileStreamfileStream=newFileStream(string,FileMode.Open,FileAccess.Read,FileShare.Read)。。。finallyfileStream.Closeusing就是简化上面的方法,可以不用写finally和Close了,自动给你写了
解决方案十:
using保证了filestream对象在超出using作用域时(也就是using后面的花括号之间的范围),释放掉filestream对象所占用资源。本句filestream对象是用于读取文件信息用的。
解决方案十一:
FileMode.Open这句是什么意思呢?纠结