- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * 13 –输入输出流 学习目的 C#语言采用了流的概念读写文件。本章介绍在C#语言中,能够处理目录(文件夹),能够处理文件,能够使用流的概念读写文件。 文件和流 文件 文件是一些具有永久存储及特定顺序的字节组成的一个有序的、具有名称的集合。 在各种介质上(可移动磁盘、硬盘、CD 等)存储的集合数据。 通常情况下文件按照树状目录进行组织,每个文件都有文件名、文件所在路径、创建时间、访问权限等属性。 流 流提供了连续的字节流存储空间,虽然数据实际存储的位置可能不连续,甚至可以分布在多个磁盘上,但我们看到的是封装以后的数据结构,是连续的字节流抽象结构。 除了和磁盘文件直接相关的文件流以外,流有多种类型,流可以分布在网络中,内存中或者是磁带中。 IO 命名空间和它类 IO 命名空间包含便于在数据流和文件中读取和写入数据的类 IO 命名空间中用于文件目录操作类 类 名 说 明 File 提供用于创建、复制、删除、移动和打开文件的静态方法, 并协助创建 FileStream。FileInfo 类提供实例方法。 Directory 提供通过目录和子目录进行创建、移动和枚举的静态方法。 DirectoryInfo类提供实例方法 FileInfo 提供用于创建、复制、删除、移动和打开文件的实例方法, 并协助创建 FileStream。File 类提供静态方法。 DirectoryInfo 提供通过目录和子目录进行创建、移动和枚举的实例方法。 Directory 类提供静态方法。 FileSystemInfo FileInfo和DirectoryInfo的抽象基类。 Path 提供以跨平台的方式处理目录字符串的方法和属性。 DriveInfo 提供访问有关驱动器的信息的实例方法。 FileStream 支持通过其Seek方法随机访问文件。 默认情况下,FileStream 以同步方式打开文件, 但它也支持异步操作。File 包含静态方法,而FileInfo包含实例方法。 DeflateStream 提供使用Deflate算法压缩和解压缩流的方法和属性。 GZipStream 提供压缩和解压缩流的方法和属性。默认情况下, 此类使用与DeflateStream 类相同的算法, 但可以扩展到使用其他压缩格式。 流I/O操作类 类 名 说 明 BinaryReader 从Streams读取编码的字符串和基元数据类型。 BinaryWriter 或向Streams写入编码的字符串和基元数据类型。 StreamReader 通过使用Encoding进行字符和字节的转换,从Streams中读取字符。StreamReader具有一个构造函数,该构造函数根据是否存在专用于Encoding的preamble(例如一个字节顺序标记)来确定给定Stream的正确Encoding是什么。 StreamWriter 通过使用Encoding将字符转换为字节,向Streams写入字符。 StringReader 从Strings中读取字符。StringReader允许您用相同的API来处理Strings,因此您的输出可以是String或以任何编码表示的Stream。 StringWriter 向Strings写入字符。StringWriter允许您用相同的API来处理Strings,因此您的输出可以是String或以任何编码表示的Stream。 TextReader StreamReader和StringReader的抽象基类。抽象Stream类的实现用于字节输入和输出,而TextReader的实现用于Unicode字符输出。 TextWriter StreamWriter和StringWriter的抽象基类。抽象Stream类的实现用于字节输入和输出,而TextWriter的实现用于Unicode字符输出。 其他I/O流类 类 名 说 明 BufferedStream 向另一个 Stream(例如 NetworkStream)添加缓冲的 Stream。(FileStream内部已具有缓冲,MemoryStream 不需要缓冲。)BufferedStream 可以围绕某些类型的流来构成以提高读写性能。缓区是内存中的字节块,用于缓存数据,从而减少对操作系统的调用次数。 MemoryStream 一个非缓冲的流,可以在内存中直接访问它的封装数据。该流没有后备存储,可用作临时缓冲区。 NetworkStream 表示网络连接上的 Stream。虽然 NetworkStream 是从 Stream 派生的,但它不属于 System.IO 命名空间,而是在 System.NET.Sockets 命名空间中。 13.1 用流读写文件 C#把读写的文件看作是
您可能关注的文档
最近下载
- 小学1-6年级必背古诗词115首(A4打印版).pdf
- 校对符号及其用法.doc VIP
- 大气污染控制工程课程设计.docx VIP
- 2022小学学生寒假体育家庭作业清单方案(详细版).pdf
- 一年级100以内加减法混合练习题(A4打印).pdf VIP
- 2024年四大名著三国演义知识竞赛题库及答案(共100题).pdf
- 2024年邵阳职业技术学院单招职业技能测试题库及答案(典优).docx VIP
- 广告标识牌采购投标方案(技术标360页).docx
- CNAS-SC170:2024 信息安全管理体系认证机构认可方案.docx VIP
- GB50156-2012(2014年版) 汽车加油加气站设计与施工规范.pdf
文档评论(0)