C#IO数据流技术

IO数据流技术

在变量,对象,数组中存储的数据都是暂时的,程序就会丢失,为了能长时间保存,将程序中的数据保持在磁盘文件中。C#中IO技术可以将数据保存到文件(如文本中),以达到长时间保存数据的目的IO可以提高对数据的处理能力

文件操作

对文件的操作大体可以分为,判断文件是否存在,创建文件,复制和移动文件,删除文件以及获取文件的基本信息。

使用文件,文件夹,及流相关类时,首先需要添加System.IO命名空间

File类

File类支持对文件的操作,包括创建,复制,删除,移动和打开文件的静态方法,并协助创建FileStream对象 ,Flie类中有40多种方法。

FileInfo类

许多方法与File类相同,但FileInfo没有静态方法,该类中的方法仅可用于实例化的对象。

File类和FileInfo类使用场景

File类是静态类,其调用需要参数为每一个方法规定文件位置,在需要对象调用一个方法时,可以使用静态File类。这种情况静态调用更快,不必执行实例化新对象。

如果要在文件是执行多种操作,则实例化FileInfo对象更好一些,可以提高效率,因为对象将在系统文件上引用正确的文件,而静态类却每一次都寻找文件。

判断文件是否存在:

Exists File类直接调用 FileInfo类需要创建对象

创建文件

Create File类直接调用 FileInfo类需要创建对象

复制文件

File类 copy FileInfo类 copyTo

移动文件

File类 Move方法 FileInfo类 MoveTo方法

删除文件

File类 Delete FileInfo类 Delete

获取文件的基本信息

使用FileInfo中的各种属性可以获取文本的基本信息。Demo-IOwindows

文件夹基本操作

对文件夹的操作可以分为,文件夹是否存在,创建文件夹,移动文件夹,删除文件夹,以及遍历文件夹中的文件。

Directory类公开了用于创建,移动,枚举,删除目录和子目录的静态方法。

DirectoryInfo类和Directory类的区别与File类和FileInfo类的区别是一样的

判断文件夹是否存在,

Exists Directory类直接调用 DirectoryInfo类需要创建对象

创建文件夹

Directory类 CreateDirectory方法 DirectoryInfo类 Create方法

移动文件夹

使用Move方法需要统一磁盘目录

Directory类 Move DirectoryInfo类 MoveTo

删除文件夹

Directory类 Delete DirectoryInfo类 Delete

遍历文件夹

一般只使用DirectoryInfo类中的GetFileSysteminfos方法,返回的是一个FileSystemInfo对象的数组

提供了GetDirectories方法,GetFiles方法,GetFileSysteminfos方法

GetDirectories遍历文件夹中的子文件夹

GetFiles遍历文件夹中的文件

GetFileSysteminfos遍历文件夹中所有子文件夹和文件

IO输入输出

输入与输出设备之间的数据传递抽象为流,

根据操作单元分类:分为字节流(操作单元一个字节),字符流(操作的数据单元是两个字节或一个字符,因为一个字符占两个字节)

根据流的流向分类:分为输入流和输出流,输入是指数据从数据源(文件,压缩包,视频)流向内存,输出流,指内存流向数据源,输入流读取数据,输出流被用来写入数据

在.net framework流由Stream类表示,该类构成了所有其他流的抽象类,不能直接创建,Stream类的实例,但是必须使用它实现某个I/O流

在C#中有许多类型的流,最重要的类型为,FileStream,它提供了读取和写入文件的方式,在处理文件I/o时,使用其他流主要包括,BufferedStream,CryptoStream,MemoryStream和NetworkStream等

FileStream类

1.常用属性 2.常用方法.3.操作文件

使用IO流操作文本文件

主要用到StreamWriter类和StreamReader

1.StreamWriter,向文本文件中写入字符串

2.StreamReader,读取文件文本的类

什么时候使用输入流,什么时候使用输出流

以内存为参照物

当数据流入内存时,就需要使用输入流

当内存流出到文件时,就需要输出流(将数据打印在显示器上就是输出的一种);

#####

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值