Visual C#(流与文件)

1.流的概述

流是字节序列的抽象概念,如文件、输入输出设备、内部进行通信的管道、TCP/IP套接字等。流常用的三个基本操作如下:读取流、写入流、查找。

Read和Write方法支持读写不同格式的数据。对于支持查找功能的流,可以使用Seek和SetLength方法以及Length和Position属性查询和修改流的当前位置和长度。

有些流实现执行数据的本地缓冲以提高性能。对于这样的流,Flush方法可用于清除所有内部缓冲区并确保将所有数据写入数据源或储存器。

在实现Stream的派生类时,必须提供Read和Write方法的实现。异步方法BeginRead、EndRead、BeginWrite和EndWrite通过同步方法Read和Write实现。

2.文件概述

文件在操作时表现为流。

二进制文件和文本文件:二进制文件中,文件内容是数据的内部表示,是从内在中直接复制过来的。文本文件中,字节单元的内容为字条的代码。对于字条信息无差别,对于数值信息,数据的内部表示和字符代码是截然不同的。

常用的文件流:

对目录的操作:Directory,DirectoryInfo,Path

对文件的典型操作:File,FileInfo

读写文件:FileStream

读写文本文件:StreamReader, StreamWriter

对字符串的读写:StringReader,StringWriter

注:

有两种类型的文件IO同步:同步文件IO和异步文件IO。异步文件IO也就是重叠IO。
在同步文件IO中,线程启动一个IO操作然后就立即进入等待状态,直到IO操作完成后才醒来继续执行。而异步文件IO方式中,线程发送一个IO请求到内核,然后继续处理其他的事情,内核完成IO请求后,将会通知线程IO操作完成了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值