C#中的using关键字

    技术2022-05-19  29

     

    使用using会自动调用MyObject的Dispose方法.如果MyObject未实现IDispose接口,则编译时会出错:无法将类型“MyProjects. MyObject”隐式转换为“System.IDisposable”这种写法可替代try{ //... }catch{ }finnaly{ MyObject.Dispose ( ) ; }

    代码片段:

    private void openFileDialog_FileOk(object sender, System.ComponentModel.CancelEventArgs e)        {            string fullPathname = openFileDialog.FileName;            FileInfo src = new FileInfo(fullPathname);            filename.Text = src.Name;            source.Text = "";

                using (TextReader reader = new StreamReader(fullPathname))            {                string line;                while ((line = reader.ReadLine()) != null)                {                    source.Text += line + "/n";                }            }        }

    其中的reader不再需要手写Close和Dispose方法了,using关键字实现了对象的自动关闭和资源释放!

     


    最新回复(0)