闲来无事看到一段代码:using (FileStream fileStream = new FileStream(string, FileMode.Open, FileAccess.Read, FileShare.Read))
            {
                XXXXXXX                try
                {
                }
                catch
                {
                }
                
                XXXXXXXXXXXXXXXXXXX
            }
不知道这是什么语法现象,什么含义呢?

解决方案 »

  1.   


    filestream是类库system.io里的,所以用using引用
    实现的是: 用filestream将读取文件信息到文件流里 
      

  2.   


    using 语句
    保证fileStream在作用域结束后被disposed. 因为文件是非托管资源,需要用这条语句保证它能及时被回收.
    具体的可以查下msdn.
      

  3.   

    不知道你想问的是哪段
    FileStream是文件流
    using代码块是保证及时释放资源
      

  4.   

    不好意思,是我没有说清楚.
    我想问的是,这里使用了 using 是什么目的,看上面几位热心大侠的回答.
    应该是用来做资源释放时候的一个标示.那如果没有使用using,而直接写成
                      FileStream fileStream = new FileStream(string, FileMode.Open, FileAccess.Read, FileShare.Read)
     
                    XXXXXXX                 try 
                .    { 
                    } 
                    catch 
                    { 
                    } 
                    
                    XXXXXXXXXXXXXXXXXXX 会有什么风险吗?或者是其他不合适的地方?
    谢谢~~~~
      

  5.   

    FileStream是文件流
    using代码块是保证及时释放资源没风险,只是及时回收对性能有好处比如你有了垃圾就丢了 不把垃圾放在内存里(因为文件是非托管代码)
    接分 谢谢
      

  6.   

      FileStream fileStream = new FileStream(string, FileMode.Open, FileAccess.Read, FileShare.Read)
        fileStream没有关闭,你最后肯定要关闭吧,fileStream.Close,如果在关闭之前就抛出异常,那这个文件就一直没关闭了,所以一般写成try 
      FileStream fileStream = new FileStream(string, FileMode.Open, FileAccess.Read, FileShare.Read)
     
    finally
     fileStream.Close
    using就是简化上面的方法,可以不用写finally和 Close了,自动给你写了
      

  7.   

    using保证了filestream对象在超出using作用域时(也就是using后面的花括号之间的范围),释放掉filestream对象所占用资源。
    本句filestream对象是用于读取文件信息用的。
      

  8.   

    FileMode.Open 这句是什么意思呢?纠结