- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
文件和流 本章介绍在C#语言中,如何处理目录(文件夹),如何处理文件,如何使用流的概念读写文件。文件是用路径来定位的,描述路径有3种方式:绝对路径、当前工作盘的相对路径、相对路径。以C:\dir1\dir2为例(假定当前工作目录为C:\dir1),C:\dir1\dir2为绝对路径,\dir1\dir2为当前工作盘的相对路径,dir2为相对路径,都表示C:\dir1\dir2。本章中所说的路径,可以是路径的3种描述方式中的任意一种。 9.1 用流读写文件 .Net把读写的文件看成是顺序字节流,用抽象类Stream代表一个流。Stream类有许多派生类,例如FileStream类,以字节为单位读写文件;BinaryRead类和BinaryWrite类,以基本数据类型为单位读写文件,可以从文件直接读写bool、String、int16、int等基本数据类型数据;StreamReader和StreamWriter类以字符或字符串为单位读写文件。本节首先介绍这些类的用法,然后介绍数据的序列化。使用流读写文件必须引入命名空间:System.IO。 9.1.1 FileStream类读写字节 使用FileStream类可以建立文件流对象,用来打开和关闭文件,以字节为单位读写文件。 构造函数:public New(string path,FileMode mode,FileAccess access) path:是文件的相对路径或绝对路径 。 mode:为FileMode.Append,打开文件并将读写位置移到文件尾,文件不存在则创建新文件,只能同FileAccess.Write一起使用。FileMode.Create,创建新文件,如果文件已存在,文件内容将被删除;FileMode.CreateNew,创建新文件,如果文件已存在,则引发异常;FileMode.Open,打开现有文件,如果文件不存在,则引发异常;FileMode.OpenOrCreate,如果文件存在,打开文件,否则,创建新文件;FileMode.Truncate,打开现有文件,并将文件所有内容删除。 access:FileAccess.Read(只读方式打开文件)、FileAccess.Write(只写方式打开文件)、FileAccess.ReadWrite(读写方式打开文件)。也可以没有第三个参数,默认为FileAccess.ReadWrite。共有8个构造函数,其他构造函数请用VS2005帮助系统查看。 方法void Write(byte[] array,int offset,int count):将参数1指定数组中多个字节写入流,要写入流的第1个字节是array[offset],参数3为要写入的字节数。 【例9.1】写字节数组数据到文件的程序如下,该程序将建立文件d:/g1.bin。注意,在文件头部必须增加如下语句引入命名空间 Imports System.IO using System; using System.IO; //使用文件必须引入的命名空间 class WriteFile { static void Main() { byte[] data=new byte[10]; //建立字节数组 for(int i=0;i10;i++) //为数组赋值 data[i]=(byte)i; FileStream fs=new FileStream (“d://g1.bin”,FileMode.Create); //建立流对象 //写data字节数组中的所有数据到文件 fs.Write(data,0,10); fs.Close() //不再使用的流对象,必须关闭。 } //垃圾收集器不能自动清除流对象 } 方法int Read(byte[] array,int offset,int count):从流中读数据写入字节数组array,读入的第1个字节写入array[offset],参数3为要读入的字节数。返回值为所读字节数,由于可能已读到文件尾部,其值可能小于count,甚至为0。 【例9.2】读一个文件所有字节到数组并在屏幕显示的程序如下,请先用上例建一个文件,然后用此例读出。 using System; using System.IO; //使用文件必须引入的命名空间 class ReadFile { static void Main() { FileStream fs=new FileStream
您可能关注的文档
- C#面向对象程序设计 第2版 作者 郑宇军 CSCH8.ppt
- C#面向对象程序设计 第2版 作者 郑宇军 CSCH9.ppt
- C#面向对象程序设计 第2版 作者 郑宇军 CSCH10.ppt
- C#面向对象程序设计 第2版 作者 郑宇军 CSCH11.ppt
- C#面向对象程序设计 第2版 作者 郑宇军 CSCH12.ppt
- C#面向对象程序设计 第2版 作者 郑宇军 CSCH13.ppt
- C#面向对象程序设计 第2版 作者 郑宇军 CSCH14.ppt
- C#面向对象程序设计 第2版 作者 郑宇军 CSCH15.ppt
- C#面向对象程序设计 第2版 作者 郑宇军 CSCH16.ppt
- C#面向对象程序设计 郑宇军 CSCH2.ppt
- C#应用程序设计教程 作者 耿肇英 赵建利 耿燚 第10章多线程和Socket编程初步.ppt
- C#应用程序设计教程 作者 耿肇英 赵建利 耿燚 第11章数据库与ADO.ppt
- C#应用开发与实践 作者 胡学钢 第2章 C#程序的组成元素.ppt
- C#应用开发与实践 作者 胡学钢 第3章 变量和常量.ppt
- C#应用开发与实践 作者 胡学钢 第8章 面向对象程序设计基础.ppt
- C#应用开发与实践 作者 胡学钢 第10章 Windows窗体及控件.ppt
- C#应用开发与实践 作者 胡学钢 第11章 ADO.NET操作数据库.ppt
- C#应用开发与实践 作者 胡学钢 第12章 面向对象高级技术.ppt
- C#应用开发与实践 作者 胡学钢 第16章 GDI+绘图.ppt
- C#应用开发与实践 作者 胡学钢 第17章 C#语言新特性.ppt
最近下载
- 固定污染源自动监测系统数智化建设技术指南编制说明.docx VIP
- 空调系统臭氧消毒效果验证.doc VIP
- 初中九年级化学课件-中考专题复习之多功能瓶的使用.ppt
- 公益电影放映服务投标方案(技术方案).doc
- 译林版2024新教材小学四年级英语上册全册各单元测评试卷及答案(含8套题).docx
- 我国大学教育基金会投资管理:现状、挑战与突破路径.docx VIP
- 《固定污染源自动监测系统数智化建设技术指南》.pdf
- 用于定价美国期权的时序深度梯度流方法-计算机科学-机器学习-神经网络-金融数学-期权定价.pdf VIP
- 售后服务工程师等级方案(3篇).docx VIP
- 50MW地面分布式光伏项目建设方案.docx
文档评论(0)