1楼:叫什么呢嫩
1、因为像 streamreader 、sqlconnection等非.***托管的范围,没办法自己释放资源,所以需要using进行手动资源释放,如果超出了花括号的范围,那资源就被释放了
2、除了用using,也可以用try{}catch{} finally
3、如果不释放资源的话 电脑长时间运行,就导致内存越来越小,最后机器就自动重启了
2楼:匿名用户
using是释放内存的作用,写不写有很大的差别,当你读取的数据量过多的时候,不释放的话,会造成那些内存用不了,专业用语不会,总之就是那些内存没法用,要是没差别,微软弄个using出来干嘛
3楼:阳光的雷咩咩
就是用完了自动释放内存,实际上不写也没什么。
4楼:针白亦邱湘
有些对象在使用过程中,资源是不会自动释放的,比较文件流要关闭,数据库连接要关闭,通常该对象提供的都有类似.close()的方法,但程序员往往会忘写这句**
如果使用using(此处实例化需要释放资源的对象)
c#里的using语句是什么意思
5楼:依岚软件
使用using语句最终生成的其实是一个try, finally**块,在finally**块里释放资源。要求是:为 using 语句提供的对象必须实现 idisposable 接口。
此接口提供了 dispose 方法,该方法将释放此对象的资源。
你的问题其实可以这样解释:
在using中其实打开了一个数据库连接,然后从数据库中读取了某些数据,最后不管读取是否成功,都应该把这个数据库连接关闭掉。
传统的写法应该是在try块里打开连接并且读取,在finally块中把连接关闭掉,而由于你的sdr对象实现了idisposable接口,所以c#允许你用using语句来代替这种写法,其实这就是一种语法糖,一种简便写法而已。
当程序运行完这个**块(超出大括号的范围)后,sdr就会被自动关闭掉。
6楼:华华兮
就对于你上面这句话而言,因为数据库open之后,最后一定要close,即在**最后写conn.close();但是用了using语句后,当执行完using语句中的**,退出using语句时,close()方法会自动帮你执行,把数据库连接关闭。方便了**的书写和以免程序员忘记关掉数据库连接。
7楼:匿名用户
using 引入名称空间或者使用非托管资源其中引入名称空间通俗的说
就是我们程序中最顶部的**
如:using system;
楼主取的例子应该是使用非托管资源,
我们一般使用的是托管资源,不用后系统会自动释放内存,而有些我们自己定义的非托管资源就需要我们手动的去释放空间
8楼:匿名用户
c# 程序员参考
using 语句请参见
c# 关键字 | using 指令 | 实现 finalize 和 dispose 以清理非托管资源
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 接口。
9楼:匿名用户
2楼找到资料对的,你要知道像文件,数据库连接这些是非托管资源.***不会自动去释放他们,一般需要你手动关闭。当使用using时,如果对象实现了system.
idisposable接口,他就会在使用完释放掉。
10楼:朝夕相处
1.using语句:定义一个范围,将在此范围之外释放一个或多个对象。
2.语法:
using (font font1 = new font("arial", 10.0f))
3.c# 通过 .*** framework 公共语言运行库 (clr) 自动释放用于存储不再需要的对象的内存。
内存的释放具有不确定性;一旦 clr 决定执行垃圾**,就会释放内存。但是,通常最好尽快释放诸如文件句柄和网络连接这样的有限资源。
4.using 语句允许程序员指定使用资源的对象应当何时释放资源。为 using 语句提供的对象必须实现 idisposable接口。
此接口提供了 dispose 方法,该方法将释放此对象的资源。
5.可以在到达 using 语句的末尾时,或者在该语句结束之前引发了异常并且控制权离开语句块时,退出 using 语句。
11楼:匿名用户
相当于局部变量,在{}的对象会自动释放
不用调用相关的dispose()方法
c#中using和“引用”文件夹的作用有什么区别
12楼:匿名用户
引用是把第三方项目或dll加入在本项目中.
using是引入不同命名空间的类.
如果不是当前项目的dll,必须先引用,才能using
c#问题,using在这里的使用是什么意思
13楼:
你这种问题大至是粗心造成的!1,检查你要using 对应的namespace 名是否存在.2,如果存在请检查你当前项目是否引用对应的namespace 生成的dll或者类译音+本切成的dll或者类
c#中的using后面的包文件是什么呢
14楼:
.*** framework,或是dll类库using的是namespace,和import完全不是一个概念。
c#中和import等价的是项目中的引用
using和c++的using是一个概念,就是可以让你少打字。
比如using system.data;
他的意思是所有system.data.*都无需在使用时加上system.data前缀了,你引用了不using一样可以使用这些东西
15楼:匿名用户
using 后面为命名空间,你所说的.dll是程序集的名字,命名空间可以和程序集的名字不同,这不影响使用,同一.dll程序集可能包含数百个命名空间,所以,比如有两个命名空间a、b;
要在a命名空间中使用b命名空间下的user类,就必须以using方式引入,编译器才找得到这个user类。
在a中:using b;
或者 b.user user=new b.user();
16楼:匿名用户
c#中的using后面的是命名空间,类似java中的包;命名空间里面则是对应的类。
命名空间我觉得就像是装类的一个箱子,知道这个箱子再找某个类就方便了。
17楼:历又
两者都差不多。只是import指向的是jar文件,而using指向的是dll里的命名空间,一个dll里可以有不止一个命名空间。
18楼:一无安慰
类库文件,表示对程序集的一种引用。与java中的包是相似的。
19楼:匿名用户
是一个dll文件,但是不是一个真正意义上的dll,是一个程序集文件(assembly),里面包含了一个或多个类封装的类库。
c#;文件读写
20楼:匿名用户
publicclassfilebyteshelper}}catch(exceptionex)
}returnbytes;
}///
///将byte文件内容写入到指定文件
//////文件内容
///包含完整路径的文件
publicstaticvoidwritebytestofile(bytebytes,stringfullfile)
using(filestreamfs=newfilestream(fullfile,filemode.create))
}catch(exceptionex)}}}这个是文件内容转byte和将byte文件内容写入指定文件。
测试已通过:将一本10+m的电子书转成byte然后转回来写入文件,打开后内容和原文件一致。
你可以试试其他的文件,比如压缩文件。文本文件应该就不用测试了。
希望能帮到你。。。
21楼:孑孑
新建一个log.txt文件
引入system.io名称空间,用文件流
using system;
using system.collections.generic;
using system.linq;
using system.text;
using system.io;
namespace streamwriteand things are looking good.",datetime.now.tolongdatestring());
sw.write("more than that,");
sw.write(" it's that c# is fun.", truth);
sw.close();
}catch (ioexception ex)}}}读取文件,这里介绍streamreader对象static void main(string args)sr.close();
}catch (ioexception ex)}另外对于简单的文档可以直接sr.readtoend()从头读到尾,还有sr.read() 返回类型char。这些兄台可以自己看书去学
以上回答你满意么?
c#中 filestream 这种类型需要什么using指令呀?
22楼:匿名用户
根据上面的内来容,可以判自
断出,你应该是操作文bai件出现的问题du。
首先第zhi一步:引用命名空间:
usingsystem.io;
第二步dao:创建文件流:
stringfilepath="";
filestreamstream=newfilestream(filepath,filemode.openorcreate,fileaccess.readwrite);
注意:filepath为需要操作的文件路径,后面两个参数表示操作,如果文件存在则打开,如果没有则创建。
总结:根据你上面的**报的错,应该不存在ffilestream的类型,应该是filestream,估计是你打错了,或者可能是别人第三方自己些的类。
vhd文件是什么意思,vhd文件是什么 5
1楼 芳元宝 vhd 是微软虚拟磁盘文件 。 vhd microsoft virtual hard disk format 。 微软的vhd文件格式是一种虚拟机硬盘 virtual machine hard disk 并可以被压缩成单个文件存放在宿主机器的文件系统上,主要包括虚拟机启动所需系统文件。...
装C是什么意思,C语言/*……*/是什么意思
1楼 神丶雨祭丨 装c 装。b 只不过好听一点不想爆粗口 希望采纳,你的支持是我们的动力! 2楼 安安静静活几年 就是比装逼 b 更厉害的当时是装c了 c语言 是什么意思 3楼 安徽电信网上营业厅 是c语言注释的起始标识。 在c语言中,可以使用 作为注释文字的起始和结束标识,在 和 中间的文字,将不...
老凤祥c是什么意思,老凤祥 c 是什么意思 30
1楼 小鼎哥哥 老凤祥有很多分公司,每个分公司都有一个字母来代替!这批货是从c公司出来的,里面就有 老凤祥c !跟质量没有关系的 2楼 吃核辐射的 老凤祥c代表产地是上海! 3楼 爱恨是非之间 老凤祥是国内唯一的由一个半世纪前相传至今的百年老店。 c对于产品本身没有区别 只不过代表老凤祥哪个分公司的...