C#语言中为什么在如下的语句中需要使用using?using是什么意思啊?
stringpath1="E:/TEMP/C#/123.txt";using(StreamReadersr=newStreamReader(path1)){Stringl...
string path1 = "E:/TEMP/C#/123.txt";
using (StreamReader sr = new StreamReader(path1))
{
String line;
// Read and display lines from the file until the end of
// the file is reached.
while ((line = sr.ReadLine()) != null)
{
Console.WriteLine(line);
textBox1.Text = line;
}
Sr.Close();//注意这里close必须在using程序段之内;
} 展开
using (StreamReader sr = new StreamReader(path1))
{
String line;
// Read and display lines from the file until the end of
// the file is reached.
while ((line = sr.ReadLine()) != null)
{
Console.WriteLine(line);
textBox1.Text = line;
}
Sr.Close();//注意这里close必须在using程序段之内;
} 展开
4个回答
展开全部
using 语句定义一个范围,在此范围的末尾将处理对象。
using (expression | type identifier = initializer) statement
其中:
expression
希望在退出 using 语句时调用 Dispose 的表达式。
type
identifier 的类型。
identifier
type 类型的名称或标识符。定义一个以上 type 类型的 identifier 是可以的。在每一个 identifier = initializer 的前边都有一个逗号。
initializer
创建对象的表达式。
statement
嵌入的语句或要执行的语句。
备注
在 using 语句中创建一个实例,确保退出 using 语句时在对象上调用 Dispose。当到达 using 语句的末尾,或者如果在语句结束之前引发异常并且控制离开语句块,都可以退出 using 语句。
实例化的对象必须实现 System.IDisposable 接口。
示例
// cs_using_statement.cs
// compile with /reference:System.Drawing.dll
using System.Drawing;
class a
{
public static void Main()
{
using (Font MyFont = new Font("Arial", 10.0f), MyFont2 = new Font("Arial", 10.0f))
{
// use MyFont and MyFont2
} // compiler will call Dispose on MyFont and MyFont2
Font MyFont3 = new Font("Arial", 10.0f);
using (MyFont3)
{
// use MyFont3
} // compiler will call Dispose on MyFont3
}
}
更多的了解请连接http://apps.hi.baidu.com/share/detail/2835169
using (expression | type identifier = initializer) statement
其中:
expression
希望在退出 using 语句时调用 Dispose 的表达式。
type
identifier 的类型。
identifier
type 类型的名称或标识符。定义一个以上 type 类型的 identifier 是可以的。在每一个 identifier = initializer 的前边都有一个逗号。
initializer
创建对象的表达式。
statement
嵌入的语句或要执行的语句。
备注
在 using 语句中创建一个实例,确保退出 using 语句时在对象上调用 Dispose。当到达 using 语句的末尾,或者如果在语句结束之前引发异常并且控制离开语句块,都可以退出 using 语句。
实例化的对象必须实现 System.IDisposable 接口。
示例
// cs_using_statement.cs
// compile with /reference:System.Drawing.dll
using System.Drawing;
class a
{
public static void Main()
{
using (Font MyFont = new Font("Arial", 10.0f), MyFont2 = new Font("Arial", 10.0f))
{
// use MyFont and MyFont2
} // compiler will call Dispose on MyFont and MyFont2
Font MyFont3 = new Font("Arial", 10.0f);
using (MyFont3)
{
// use MyFont3
} // compiler will call Dispose on MyFont3
}
}
更多的了解请连接http://apps.hi.baidu.com/share/detail/2835169
展开全部
using 指令定义一个作用域范围, 当作用域内部的代码执行完毕时,using会自动销毁在作用域创建的所有对像并释放资源
sr.Close();必须写在using作用域内,因为此对像是在using作用域中创建的
因为using会自动销毁对像并释放资源,所以sr.Close()方法可以不用写
sr.Close();必须写在using作用域内,因为此对像是在using作用域中创建的
因为using会自动销毁对像并释放资源,所以sr.Close()方法可以不用写
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我就事论事了,这里的using是让StreamReader这个读写器在使用完后,即在语句块结束后,释放掉StreamReader的所占用的资源,这种用法还是很普遍的,当你要事先实现IDisposable这个接口才行。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
释放资源
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询