C#文件目录操作方法汇总
在C#编程中,文件和目录操作是非常常见的需求。本文总结了常用的C#文件目录操作方法,包括路径操作、目录创建、文件创建、文件读写、文件复制、文件删除等多个方面,旨在帮助读者快速实现对文件和目录的操作。
路径操作
获取当前应用程序执行文件所在目录
string path = AppDomain.CurrentDomain.BaseDirectory;
获取当前进程的工作目录
string path = Environment.CurrentDirectory;
获取指定文件所在目录
string path = Path.GetDirectoryName(filePath);
目录操作
判断目录是否存在
bool isExists = Directory.Exists(directoryPath);
创建目录,如果已存在则不创建
Directory.CreateDirectory(directoryPath);
删除目录,如果目录非空则抛出异常
Directory.Delete(directoryPath);
强制删除目录及其子目录以及文件
Directory.Delete(directoryPath, true);
复制目录及其子目录以及文件
Directory.CreateDirectory(targetDirectoryPath);
FileSystem.CopyDirectory(directoryPath, targetDirectoryPath, true);
文件操作
判断文件是否存在
bool isExists = File.Exists(filePath);
创建文件,如果已存在则不创建
File.Create(filePath);
读取文件的所有文本
string text = File.ReadAllText(filePath);
写入文本到文件中
File.WriteAllText(filePath, text);
追加文本到文件中
File.AppendAllText(filePath, text);
复制文件
File.Copy(sourceFilePath, targetFilePath, true);
移动文件或重命名文件
File.Move(sourceFilePath, targetFilePath);
删除文件
File.Delete(filePath);
示例说明
复制文件夹
using System.IO;
public static void CopyDirectory(string sourceDirectoryPath, string targetDirectoryPath)
{
if (!Directory.Exists(targetDirectoryPath))
{
Directory.CreateDirectory(targetDirectoryPath);
}
foreach (string file in Directory.GetFiles(sourceDirectoryPath))
{
string targetFilePath = Path.Combine(targetDirectoryPath, Path.GetFileName(file));
File.Copy(file, targetFilePath, true);
}
foreach (string directory in Directory.GetDirectories(sourceDirectoryPath))
{
string targetDirectoryPath = Path.Combine(targetDirectoryPath, Path.GetFileName(directory));
CopyDirectory(directory, targetDirectoryPath);
}
}
示例代码中定义了一个 CopyDirectory
方法,用于复制指定目录下的所有文件和子目录到目标目录中。方法中使用了递归实现,遍历源目录下的所有文件和子目录,并将其复制到目标目录下。
读取文件内容到列表中
using System.Collections.Generic;
using System.IO;
public static List<string> ReadFileToList(string filePath)
{
List<string> result = new List<string>();
using (StreamReader sr = new StreamReader(filePath))
{
string line;
while ((line = sr.ReadLine()) != null)
{
result.Add(line);
}
}
return result;
}
示例代码中定义了一个 ReadFileToList
方法,用于读取指定文件的所有行并保存到列表中。方法中使用 StreamReader
类进行文件读取操作,逐行读取文本内容,并添加到结果列表中。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#文件目录操作方法汇总 - Python技术站