c#中filedirectoryfileinfodirectoryinfo区别与应用

c#中filedirectoryfileinfodirectoryinfo区别与应用

ID:34415513

大小:30.50 KB

页数:5页

时间:2019-03-05

c#中filedirectoryfileinfodirectoryinfo区别与应用_第1页
c#中filedirectoryfileinfodirectoryinfo区别与应用_第2页
c#中filedirectoryfileinfodirectoryinfo区别与应用_第3页
c#中filedirectoryfileinfodirectoryinfo区别与应用_第4页
c#中filedirectoryfileinfodirectoryinfo区别与应用_第5页
资源描述:

《c#中filedirectoryfileinfodirectoryinfo区别与应用》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、两者的共同点:一:都用于典型的操作,如复制、移动、重命名、创建、打开、删除和追加到文件二:默认情况下,将向所有用户授予对新文件的完全读/写访问权限。两者的区别:File类是静态类,由于所有的File方法都是静态的,所以如果只想执行一个操作,那么使用File方法的效率比使用相应的FileInfo实例方法可能更高。所有的File方法都要求当前所操作的文件的路径。File类的静态方法对所有方法都执行安全检查。如果打算多次重用某个对象,可考虑改用FileInfo的相应实例方法,因为并不总是需要安全检查。file,directory可以控制多个文件所以进行每次安全检查,而FileInfo,Directo

2、ryInfo只能控制一个文件信息只进行一次安全处理。静态方法每次对文件进行操作过程是:静态方法存在于栈头,它是由类调用,然后寻找需要操作的文件。寻找需要操作文件的过程是个IO过程,耗时比较长。但它不必要到堆区去遍历实例化新对象。普通方法是由当时的对象调用,需要创建对象,new一个,(静态方法不需要此过程)但如果操作次数多的话,普通方法就不需要再次去执行不必要而且耗时的IO操作,就能整体提速!所以执行方法的次数也就能决定了使用哪个类的最佳选择。参考《ASP.NET与VB.NET从入门到精通》(电子工业出版社A.RusellJones著高春蓉谷宇阎隽等译))下面的示例演示了File类的一些主要成员

3、。usingSystem;usingSystem.IO;classTest...{publicstaticvoidMain()...{stringpath=@"c:empMyTest.txt";if(!File.Exists(path))...{//Createafiletowriteto.using(StreamWritersw=File.CreateText(path))...{sw.WriteLine("Hello");sw.WriteLine("And");sw.WriteLine("Welcome");}}//Openthefiletoreadfrom.using(StreamRea

4、dersr=File.OpenText(path))...{strings="";while((s=sr.ReadLine())!=null)...{Console.WriteLine(s);}}try...{stringpath2=path+"temp";//Ensurethatthetargetdoesnotexist.File.Delete(path2);//Copythefile.File.Copy(path,path2);Console.WriteLine("{0}wascopiedto{1}.",path,path2);//Deletethenewlycreatedfile.Fil

5、e.Delete(path2);Console.WriteLine("{0}wassuccessfullydeleted.",path2);}catch(Exceptione)...{Console.WriteLine("Theprocessfailed:{0}",e.ToString());}}}File.Create方法(String)参数path:要创建的文件的路径及名称。返回值:一个FileStream,它提供对path中指定的文件的读/写访问。下面的示例在指定路径中创建一个文件,将一些信息写入该文件,再从文件中读取。usingSystem;usingSystem.IO;usingSy

6、stem.Text;classTest...{publicstaticvoidMain()...{stringpath=@"c:empMyTest.txt";try...{//Deletethefileifitexists.if(File.Exists(path))...{File.Delete(path);}//Createthefile.using(FileStreamfs=File.Create(path))...{Byte[]info=newUTF8Encoding(true).GetBytes("Thisissometextinthefile.");//Addsomeinformat

7、iontothefile.fs.Write(info,0,info.Length);}//Openthestreamandreaditback.using(StreamReadersr=File.OpenText(path))...{strings="";while((s=sr.ReadLine())!=null)...{Console.WriteLine(s);}}}catch(Exceptio

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。