2024年3月13日发(作者:)

C# 操作目录和文件

Directory类和DirectoryInfo类是对目录进行操作的类,可以对目录执行创建、

删除、移动等常用操作。File类和FileInfo类是对文件进行操作的类,可以对文件

执行创建、删除、移动、复制等常用操作。

(1)打开Microsoft Visual Studio 2010。新建一个名称为“MyApplication10_1”

的项目并在该项目中新建一个“控制台应用程序”。

(2)定义两个路径path和newpath,在E盘中新建一个文件夹“newDirectory”。

然后执行Directory类的相应方法在指定路径上创建、移动和删除目录。

CreateDirectory()方法创建目录;Delete()方法删除目录;Move()方法移动目录。

string path=@"E:MyDirectory";

string newPath=@"E:newDirectorynewDirectory";

//Exist方法确定给定路径是否应用磁盘上的现有目录

if((path))

{

ine("文件已存在!");

return;

}

//CreateDirectory方法在指定路径上创建目录

DirectoryInfo newDirectory=Directory(path);

//GetcreationTime方法获取指定路径目录的创建时间

ine("文件于{}创建"+ationTime(path));

//移动目录

(path,newPath);

ine("文件移动成功!");

ine("文件已删除!n");

//在指定路径上删除目录

(newPath);

(3)定义一个路径path1,然后,执行DirectoryInfo类的方法对目录进行操作,

Create()方法创建目录,Delete()方法删除目录,MoTo()方法移动目录。

string path1=@"E:myDir";

DirectoryInfo driectoryInfo=new DirectoryInfo(path1);

try

{

if((path1))

{

ine("文件已存在!");

return;

}

//创建目录

();

ine("文件于{0}创建",onTime);

//移动目录的位置

(@"E:newMydir");

ine("文件移动成功");

//删除目录

();

ine("文件已删除n");

}

catch(Exceptione)

{

ine(ng());

}

finally

{}

(4)首先定义四个路径。然后,执行File类的相应方法对文件进行操作。Exists()

方法判断指定路径上是否存在文件;Create()方法在指定路径上创建文件;Copy()方

法得到一个与原文件内容相同的文件。

string path2=@"E:";

string newpath=@"E:";

string newpath1=@"E:";

string pathOpen=@"E:";

try

{

//Exist方法确定指定的文件是否存在

if((path2))

{

ine("文件已存在!");

return;

}

//Create方法在指定路径中创建或覆盖文件

FileStream newFile=(path2);

ine("文件于{}创建"+ationTime(path2));

();

//Copy方法将现有文件复制到新文件,不允许覆盖同名的文件

(path2,newpath);

ine("文件成功复制!");

//删除指定路径的文件

(newpath);

ine("成功删除复制的文件!");

(5)执行File类的Move()方法可以将指定文件移动到新位置;执行File类的

Open()方法能够打开指定路径上的FileStream。

//将指定文件移到新位置

(path2,newpath1);

ine("成功移动文件");

//Open方法打开指定路径上的FileStream

FileStream fileStream=(pathOpen,);

byte[]b=newbyte[128];

UTF8Encoding temp=new UTF8Encoding(true);

while((b,0,)>0)

{

ine(ing(b));

}

}

catch(Exceptione)

{

ine(ng());

}

finally{}

(6)创建FileInfo类的实例fileInfo作为文件的路径包装。然后,通

过fileInfo的属性值判断是否存在该文件。如果不存在,执行fileInfo的Create()方

法创建该文件。

FileInfo fileInfo=new FileInfo(@"E:");

FileInfo newFileInfo=new FileInfo(@"E:");

try

{

if()

{

ine("文件已存在!");

return;

}

//Create方法返回一个FileStream值

FileStream fileStream=();

ine("成功创建文件!");

();

(@"E:");

ine("成功复制文件!");

(7)在E盘中新建一个temp文件夹。执行fileInfo类的MoveTo()方法可将文

件移动到temp文件中;执行Open()方法可以打开指定路径上的文件。

(@"E:");

ine("成功移动文件!");

//Delete方法删除文件

();

ine("成功删除文件!");

//Open方法打开文件

FileStream newFileStream=();

byte [] b=new byte[128];

UTF8Encoding temp=new UTF8Encoding(true);

while((b,0,)>0)

{

ine(ing(b));

}

}

catch(Exceptione)

{

ine(ng());

}

finally

{}

(8)按下【Ctrl+S】键保存源代码,然后执行菜单栏中的【调试】命令或者按

下【Ctrl+F5】键查看运行结果,如图10-7所示。

图10-7 运行结果