当前位置:首页 > 代码相关 > 正文内容

C# 与文件相关的几个类(2)

admin4年前 (2020-05-10)代码相关4238

Directory类:静态类,主要处理文件目录。

方法:

CreateDirectory(String)在指定路径中创建所有目录和子目录,除非它们已经存在。返回值是一个DirectoryInfo对象
Delete(String)从指定路径删除空目录。无返回值。
Exists(String)确定给定路径是否引用磁盘上的现有目录。返回值为bool类型。
GetDirectories(String)返回指定目录中的子目录的名称(包括其路径)。返回值是string[]。
GetCurrentDirectory()获取应用程序的当前工作目录。返回值是string。
GetFiles(String)返回指定目录中文件的名称(包括其路径)。返回值是string[]。
GetFileSystemEntries(String)返回指定路径中的所有文件和子目录的名称。返回值是string[]。
EnumerateFiles(String)返回指定路径中的完整文件名的可枚举集合。与GetFiles类似,但返回的是IEnumerable<string>集合。
EnumerateDirectories(String)返回指定路径中的目录完整名称的可枚举集合。与GetDirectories类似,但返回的是IEnumerable<string>集合。
EnumerateFileSystemEntries(String)返回指定路径中的文件名和目录名的可枚举集合。与GetFileSystemEntries类似,但返回的是IEnumerable<string>集合。
Move(String, String)将文件或目录及其内容移到新位置。

CreateDirectory,在指定路径创建一个目录。如果该目录已存在,则此方法不会创建新目录,但会返回现有目录的 DirectoryInfo 对象。

DirectoryInfo directoryInfo = Directory.CreateDirectory(@"D:TestFold");

Delete,含有两个重载方法,

Delete(String),删除空目录,目录必须存在且为空(不包含任何文件及文件夹),否则都会报错。

Directory.Delete(@"D:TestFold");

Delete(String, Boolean),bool值表示是否删除该目录中的所有子目录和文件。

Directory.Delete(@"D:TestFold",true);

Exists,确定指定路径的目录是否存在。

bool isExist = Directory.Exists(@"D:TestFold");
Console.WriteLine(isExist);

GetDirectories,有三个重载方法,返回指定目录的子目录。

GetDirectories(String)

 string[] fold = Directory.GetDirectories(@"D:");
 foreach (var item in fold)
 {
     Console.WriteLine(item);
 }

GetDirectories(String, String):包含匹配模式。第二个参数可以包含有效文本和通配符的组合,但不支持正则表达式

string[] fold = Directory.GetDirectories(@"D:","PRO*");
foreach (var item in fold)
{
    Console.WriteLine(item);
}

GetDirectories(String, String, SearchOption):第三个参数是枚举类型,指定是否搜索所有子目录。

string[] fold = Directory.GetDirectories(@"D:GDAL","*",SearchOption.AllDirectories);
foreach (var item in fold)
{
    Console.WriteLine(item);
}

GetCurrentDirectory:获取当前工作目录。

string currentDir = Directory.GetCurrentDirectory();
Console.WriteLine(currentDir);

GetFiles:返回指定目录文件名的数组,有三个重载方法,与GetDirectories相似。

GetFiles(String):返回指定目录下所有文件的文件名数组。

string[] files = Directory.GetFiles(@"D:");
foreach (var item in files)
{
     Console.WriteLine(item);
}

GetFiles(String, String)返回指定目录中与指定的搜索模式匹配的文件的名称(包含其路径)。第二个参数可以包含有效文本路径和通配符(* 和 ?)的组合,但不支持正则表达式

string[] files = Directory.GetFiles(@"D:","*.mkv");
foreach (var item in files)
{
    Console.WriteLine(item);
}

GetFiles(String, String, SearchOption):第三个参数是枚举类型,表示是否搜索所有子目录。

string[] files = Directory.GetFiles(@"K:电影","*.mkv",SearchOption.AllDirectories);
foreach (var item in files)
{
     Console.WriteLine(item);
}

GetFileSystemEntries:返回指定路径中的所有文件和子目录的名称。三个重载方法与上面类似,不赘述。

EnumerateFiles,返回文件名的IEnumerable<string>集合。三个重载方法与上面类似。

IEnumerable<string> enumDir = Directory.EnumerateFiles(@"D:");
            foreach (var item in enumDir)
            {
                Console.WriteLine(item);
            }

EnumerateDirectories:返回目录的IEnumerable<string>集合。三个重载方法与上面类似。

EnumerateFileSystemEntries:返回目录及文件名的IEnumerable<string>集合。三个重载方法与上面类似。

Move:将文件或目录移动到新位置。两个参数必须一致,即均为文件名或均为文件目录。若新目录已存在会报异常。



扫描二维码推送至手机访问。

版权声明:本文由lovedm.club发布,如需转载请注明出处。

本文链接:http://lovedm.club/?id=46

分享给朋友:

“C# 与文件相关的几个类(2)” 的相关文章

C# WPF程序 显示时间

C# WPF程序 显示时间

例子来源于此视频https://www.bilibili.com/video/av1422127?p=4 此例子是想说明有的类主要使用它的事件namespace Wpf_test {     /// <summary> &...

C#的类型系统

C#的类型系统

C#的五大数据类型:    类(Class)    结构体(Structures)    枚举(Enumerations)    接口(In...

九九乘法表算法

九九乘法表算法

namespace _20200324 {     class Program     {         st...

C# 测量运行时间

使用Stopwatch类进行运行时间的监测要使用 System.Diagnostics 命名空间方法表 4Reset()停止时间间隔测量,并将运行时间重置为零。Restart()停止时间间隔测量,将运行时间重置为零,然后开始测量运行时间。Start()开始或继续测量某个时间间隔的运行时间。...

C# 与文件相关的几个类(1)

C# 与文件相关的几个类(1)

C# 与文件访问相关的常用的类:File类、Directory类、Path类、FileInfo类、DirectoryInfo类、FileSystemInfo类、FileSystemWatcher类以上几个类均在System.IO命名空间下。挨个说吧:File类:静态类,只有静态方法,用于移...

C# Stack堆栈

Stack代表了一个先入后出的对象集合。有以下常用方法:表 3Clear()从 Stack 中移除所有对象。Contains(Object)确定某元素是否在 Stack 中。CopyTo(Array, Int32)从指定的数组索引处开始,将 Stac...