C#文件处理一般涉及到文件流,以及读文件和写文件。弄懂这些概念就会对C#文件处理有一个更深刻的理解,C#文件处理的流程也就是从流开始的。
成都创新互联专业为企业提供下冶网站建设、下冶做网站、下冶网站设计、下冶网站制作等企业网站建设、网页设计与制作、下冶企业网站模板建站服务,10余年下冶做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
1、什么是流?
流是用来载体与载体之间传送数据的。载体是数据的载体,如:如果数据存放在硬盘上,则硬盘是载体,放U盘上,则U盘是载体,以此类推。
2、流传送数据的方式是什么?
一个字节一个字节的传送,说白了就是传送字节数组。字节数组是连续的内存空间。
3、把对象用流传送必须先转换为字节数组。
4.读文件实质
string---->编码、序列化、把字符串转换为字节数组--->byte[]--->fs[FileStream]--->文件
5.写文件的实质
文件--->fs[FileStream]--->byte[]--->解码、反序列化、把字节数组转换为字符串--->string
6、当流对文件进行写操作[Write]时,会自动调用一个新线程来专门写文件,所以对文件的写操作完毕后必须清空缓冲区,fs.Flush(); fs是FileStream的一个实例,即--->清空非托管内存。因为在进行对文件的写操作时,会新建一个文件,Windows系统将会调用windows代码,才会存在非托管内存。 调用fs.Flush()时主线程等待从线程写入完毕,就相当于调用了EndInvoke(),它自动实现了IDisposable接口来释放非托管内存.
7、在对文件进行读取操作的时候,可能出现乱码,原因是--->没有采用同一套字符集的编码器。如:UTF8ENCODING、gb2312、UNICODE等
8、流的分类
byte[]---------->文件流--------->文件
byte[]--------->网络流--------->网络
byte[]--------->内存流--------->对象
byte[]--------->缓存流--------->另一个流
网站题目:C#文件处理相关机制解析
转载源于:http://www.shufengxianlan.com/qtweb/news37/307437.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联