filestream操作类

filestream操作类

ID:6031132

大小:76.50 KB

页数:13页

时间:2017-12-31

filestream操作类_第1页
filestream操作类_第2页
filestream操作类_第3页
filestream操作类_第4页
filestream操作类_第5页
资源描述:

《filestream操作类》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、c#FileStream文件读写FileStream对象表示在磁盘或网络路径上指向文件的流。这个类提供了在文件中读写字节的方法,但经常使用StreamReader或StreamWriter执行这些功能。这是因为FileStream类操作的是字节和字节数组,而Stream类操作的是字符数据。字符数据易于使用,但是有些操作,比如随机文件访问(访问文件中间某点的数据),就必须由FileStream对象执行,稍后对此进行介绍。还有几种方法可以创建FileStream对象。构造函数具有许多不同的重载版本,最简单的构造函数仅仅带有两个参数,即文件名和FileMode枚举值。FileS

2、treamaFile=newFileStream(filename,FileMode.Member);FileMode枚举有几个成员,规定了如何打开或创建文件。稍后介绍这些枚举成员。另一个常用的构造函数如下:FileStreamaFile=newFileStream(filename,FileMode.Member,FileAccess.Member);第三个参数是FileAccess枚举的一个成员,它指定了流的作用。FileAccess枚举的成员如表22-6所示。表22-6成员说明Read打开文件,用于只读Write打开文件,用于只写ReadWrite打开文件,用于读写

3、对文件进行不是FileAccess枚举成员指定的操作会导致抛出异常。此属性的作用是,基于用户的身份验证级别改变用户对文件的访问权限。在FileStream构造函数不使用FileAccess枚举参数的版本中,使用默认值FileAccess.ReadWrite。FileMode枚举成员如表22-7所示。使用每个值会发生什么,取决于指定的文件名是否表示已有的文件。注意这个表中的项表示创建流时该流指向文件中的位置,下一节将详细讨论这个主题。除非特别说明,否则流就指向文件的开头。表22-7成员文件存在文件不存在Append打开文件,流指向文件的末尾,只能与枚举FileAccess.

4、Write联合使用创建一个新文件。只能与枚举FileAccess.Write联合使用Create删除该文件,然后创建新文件创建新文件CreateNew抛出异常创建新文件Open打开现有的文件,流指向文件的开头抛出异常OpenOrCreate打开文件,流指向文件的开头创建新文件Truncate打开现有文件,清除其内容。流指向文件的开头,保留文件的初始创建日期抛出异常File和FileInfo类都提供了OpenRead()和OpenWrite()方法,更易于创建FileStream对象。前者打开了只读访问的文件,后者只允许写入文件。这些都提供了快捷方式,因此不必以FileSt

5、ream构造函数的参数形式提供前面所有的信息。例如,下面的代码行打开了用于只读访问的Data.txt文件:FileStreamaFile=File.OpenRead("Data.txt");注意下面的代码执行同样的功能:FileInfoaFileInfo=newFileInfo("Data.txt");FileStreamaFile=aFile.OpenRead();1.文件位置FileStream类维护内部文件指针,该指针指向文件中进行下一次读写操作的位置。在大多数情况下,当打开文件时,它就指向文件的开始位置,但是此指针可以修改。这允许应用程序在文件的任何位置读写,随机

6、访问文件,或直接跳到文件的特定位置上。当处理大型文件时,这非常省时,因为马上可以定位到正确的位置。实现此功能的方法是Seek()方法,它有两个参数:第一个参数规定文件指针以字节为单位的移动距离。第二个参数规定开始计算的起始位置,用SeekOrigin枚举的一个值表示。SeekOrigin枚举包含3个值:Begin、Current和End。例如,下面的代码行将文件指针移动到文件的第8个字节,其起始位置就是文件的第1个字节:aFile.Seek(8,SeekOrigin.Begin);下面的代码行将指针从当前位置开始向前移动2个字节。如果在上面的代码行之后执行下面的代码,文件

7、指针就指向文件的第10个字节:aFile.Seek(2,SeekOrigin.Current);注意读写文件时,文件指针也会改变。在读取了10个字节之后,文件指针就指向被读取的第10个字节之后的字节。也可以规定负查找位置,这可以与SeekOrigin.End枚举值一起使用,查找靠近文件末端的位置。下面的代码会查找文件中倒数第5个字节:aFile.Seek(–5,SeekOrigin.End);以这种方式访问的文件有时称为随机访问文件,因为应用程序可以访问文件中的任何位置。稍后介绍的Stream类可以连续地访问文件,不允许以这种

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

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

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