数据访问--文件

目录

用于输入和输出的类

File类

Directory类

FileInfo类

DirectoryInfo类

使用流的类

FileStream对象

StreamWriter对象

StreamReader对象

读写压缩文件

监控文件系统


用于输入和输出的类

File类

静态方法

说明

Copy()

将文件从源位置复制到目标位置

Create()

在指定的路径上创建文件

Delete()

删除文件

Open()

返回指定路径上的FileStream对象

Move()

将指定的文件移到新位置,可在新位置为文件指定不同名称

 

Directory类

静态方法

说明

CreateDirectory()

创建具有指定路劲的目录

Delete()

删除指定的目录及其中的所有文件

GetDirectories()

返回表示指定目录下的目录名的string对象数组

EnumerateDirectories()

与GetDirectories()类似,但返回目录名的IEnumerable<string>集合

GetFiles()

返回在指定目录中的文件名的string对象数组

EnumerateFiles()

与GetFiles()类似,但返回文件名的IEnumerable<string>集合

GetFileSystemEntries()

返回指定目录中的文件和目录名的string对象数组

EnumerateFileSystemEntries()

与GetFileSystemEntries()类似,但返回文件和目录名的IEnumerable<string>集合

Move()

将指定目录移到新位置,可在新位置为文件夹指定一个新名称

Note:存在大量文件或目录时,EnumerateXxx()方法其性能比对应的GetXxx()方法好

 

FileInfo类

FileInfo类不是静态的,没有静态方法,只有在实例化后才可使用。FileInfo对象表示磁盘或网络位置上的文件,提供文件路径,就可以创建一个FileInfo对象。

FileInfo aFile = new FileInfo(@"C:\Log.txt");

Note:@表示这个字符串应该按字面意思解释,\就是\。如果不用@,则\需要写成\\

//下面两个调用相同--检查Data.txt文件是否存在
FileInfo aFile = new FileInfo("Data.txt");
if(aFile.Exists)
    Console.WriteLine("File Exists");
    
if(File.Exists("Data.txt"))
    Console.WriteLine("File Exists");
    

Note

  1. 仅进行单一方法调用,使用静态File类上的方法会快一点,因为.NET Framework不必实例化新对象,再调用方法。
  2. 如果应用程序在文件上执行几种操作,实例化FileInfo对象并使用其方法会更好。因为对象已在文件系统上引用正确的文件,而静态类每次都需要寻找文件。

FileSystem属性

属性

说明

Attributes

使用FileAttributes枚举,获取或者设置当前文件或目录的特性

CreationTime

CreationTimeUtc

获取当前文件的创建日期和时间,可使用UTC和非UTC版本

Extension

提取文件的扩展名,只读属性

Exists

确定文件是否存在,是只读的抽象属性,在FileInfo和DirectoryInfo中进行了重写

FullName

检索文件的完整路径,只读属性

LastAccessTime

LastAccessTimeUtc

获取或者设置上次访问当前文件的日期和时间,可使用UTC和非UTC版本

LastWriteTime

LastWriteTimeUtc

获取或设置上次写入文件的日期和时间,可使用UTC和非UTC版本

Name

检索文件的完整路径,是一个只读抽象属性,在FileInfo和DirectoryInfo中进行重写

FileInfo专用属性

属性

说明

Directory

检索一个DirectoryInfo对象,表示包含当前文件的目录,只读属性

DirectoryName

返回文件目录的路径,只读属性

IsReadOnly

文件只读特性的快捷方式,也可通过Attributes访问该属性

Length

获取文件的大小(以字节为单位),返回long值,只读属性

 

DirectoryInfo类

DirectoryInfo类是一个实例化对象,表示计算机上的单一目录,和FileInfo类类似。在Directory和DirectoryInfo类一样存在许多类似方法调用,选择原则和File,FileInfo类似:

  1. 执行单一调用,用Directory类
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值