手机
当前位置:查字典教程网 >编程开发 >C#教程 >C#操作目录与文件的方法步骤
C#操作目录与文件的方法步骤
摘要:•创建目录和文件1、通过Path类的Combine方法可以合并路径。复制代码代码如下:stringactiveDir=@"C:m...

• 创建目录和文件

1、通过Path类的Combine方法可以合并路径。

复制代码 代码如下:

string activeDir = @"C:myDir";

string newPath = System.IO.Path.Combine(activeDir, "mySubDirOne");

2、目录的创建。

创建目录时如果目录已存在,则不会重新创建目录,且不会报错。创建目录时会自动创建路径中各级不存在的目录。

(1)通过Directory类的CreateDirectory方法创建。

复制代码 代码如下:

string activeDir = @"C:myDir";

string newPath = System.IO.Path.Combine(activeDir, "mySubDirOne");

System.IO.Directory.CreateDirectory(newPath);

(2)通过DirectoryInfo的对象创建。

复制代码 代码如下:

System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(@"C:myDirTwomySubDirThree");

di.Create();

3、文件的创建。

通过Create方法创建文件,会覆盖同名的现有文件。创建文件时,该文件所在路径的目录必须存在,否则报错。

(1)通过File类的Create方法创建。

复制代码 代码如下:

string activeDir = @"C:myDir";

string newPath = System.IO.Path.Combine(activeDir, "mySubDirOne");

System.IO.Directory.CreateDirectory(newPath);

//创建一个空白文件

string fileNameOne = DateTime.Now.ToString("yyyyMMddHHmmssffff")

+ ".txt";

string filePathOne = System.IO.Path.Combine(newPath, fileNameOne);

System.IO.File.Create(filePathOne);

(2)通过FileInfo对象创建。

复制代码 代码如下:

//通过Combine合并目录

//然后创建目录

string activeDir = @"C:myDir";

string newPath = System.IO.Path.Combine(activeDir, "mySubDirOne");

System.IO.Directory.CreateDirectory(newPath);

//创建一个空白文件

string fileNameOne = DateTime.Now.ToString("yyyyMMddHHmmssffff")

+ ".txt";

string filePathOne = System.IO.Path.Combine(newPath, fileNameOne);

System.IO.FileInfo fi = new System.IO.FileInfo(filePathOne);

fi.Create();

• 复制目录文件

复制代码 代码如下:

//复制单个文件到指定目录

string fileName = "test.txt";

string sourcePath = @"C:testDirsubTestDir";

string targetPath = @"C:testDirsubTestDirTwo";

string sourceFile = System.IO.Path.Combine(sourcePath, fileName);

string destFile = System.IO.Path.Combine(targetPath, fileName);

if (!System.IO.Directory.Exists(targetPath))

System.IO.Directory.CreateDirectory(targetPath);

//如果已存在,参数为false时将报错,参数为true重写该文件

//当copy方法为两个参数时,默认重写为false。

System.IO.File.Copy(sourceFile, destFile, true);

//以下为复制一个目录下所有文件到指定目录

//如果复制有子目录的目录的所有文件,可以用递归或堆栈算法实现

if (System.IO.Directory.Exists(sourcePath))

{

string[] files = System.IO.Directory.GetFiles(sourcePath);

foreach (string s in files)

{

//仅返回路径字符串的文件名及后缀

fileName = System.IO.Path.GetFileName(s);

destFile = System.IO.Path.Combine(targetPath, fileName);

System.IO.File.Copy(s, destFile, true);

}

}

}

• 移动目录和文件

复制代码 代码如下:

/*移动文件*/

string sourceFile = @"C:testDirsubTestDirtest.txt";

string destFile = @"C:testDirsubTestDirTwotest.txt";

//当目标文件存在时,抛出异常

System.IO.File.Move(sourceFile, destFile);

/*移动目录*/

//移动目录将移动改目录的子目录和文件

System.IO.Directory.Move(@"C:testDirsubTestDirTwo", @"C:testDirsubTestDir");

• 删除目录和文件

1、删除目录

删除目录,如果该目录不存在,会抛出异常。可以通过File类的Delete方法删除目录,也可以通过FileInfo对象方法删除目录。

(1)通过 File类的Delete方法删除目录

复制代码 代码如下:

//删除可写空目录

//如果不为空抛出目录不为空异常

try

{

System.IO.Directory.Delete(@"C:testDirsubTestDir");

}

catch (System.IO.IOException e)

{

Console.WriteLine(e.Message);

}

//第二参数为false时,只能删除空目录,否则抛出不为空异常

//第二参数为true时,删除目录,包括子目录和文件

try

{

System.IO.Directory.Delete(@"C:testDirsubTestDir", true);

}

catch(System.IO.IOException e)

{

Console.WriteLine(e.Message);

}

(2)通过FileInfo对象方法删除目录

复制代码 代码如下:

System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(@"C:testDirsubTestDirTwo");

try

{

//无参数删除空目录

//当参数为false,可删除空目录;为true,删除目录,包括子目录和文件

di.Delete(true);

}

catch (System.IO.IOException e)

{

Console.WriteLine(e.Message);

}

2、删除文件

删除文件时如果指定文件的目录存在,而文件不存在,则不会抛出异常,如果指定文件的目录不存在,则会抛出异常。

(1)通过File类Delete方法删除文件

复制代码 代码如下:

try

{

System.IO.File.Delete(@"C:testDirsubTestDirtest.txt");

}

catch(System.IO.IOException e)

{

Console.WriteLine(e.Message);

}

(2)通过FileInfo对象Delete方法删除文件

复制代码 代码如下:

System.IO.FileInfo fi = new System.IO.FileInfo(@"C:testDirsubTestDirtest1.txt");

try

{

fi.Delete();

}

catch(System.IO.IOException e)

{

Console.WriteLine(e.Message);

}

【C#操作目录与文件的方法步骤】相关文章:

C# 操作XML文档 使用XmlDocument类方法

c# 托盘双击不触发单击事件的实现方法

Winform跨线程操作的简单方法

c# 获取数据库中所有表名称的方法

C# WORD操作实现代码

C# SendInput 模拟鼠标操作的实现方法

c#简单读取文本的实例方法

C#图片压缩的实现方法

C#访问应用程序配置文件的方法

C#访问PostGreSQL数据库的方法

精品推荐
分类导航