/// <summary>
/// 删除指定文件夹
/// </summary>
/// <param name="dir">文件夹路径</param>
public static void DeleteFolder(string dirPath)
{
try
{
foreach (string d in Directory.GetFileSystemEntries(dirPath))
{
if (File.Exists(d))
{
FileInfo fi = new FileInfo(d);
if (fi.Attributes.ToString().IndexOf("ReadOnly") != -1)
fi.Attributes = FileAttributes.Normal;
File.Delete(d);//直接删除其中的文件
}
else
{
DeleteFolder(d);//递归删除子文件夹
}
}
Directory.Delete(dirPath);//删除已空文件夹
}
catch (Exception ex)
{
}
}
// 调用
// //指定的文件夹目录
// DirectoryInfo dir = new DirectoryInfo(path);
List<string> pathList = new List<string>();
/// <summary>
/// 遍历指定文件夹及其子文件下的所有文件
/// </summary>
/// <param name="_dir"></param>
public void GetFileList(DirectoryInfo _dir)
{
//获取指定文件夹下的所有文件
FileInfo[] fis = _dir.GetFiles();
for (int i = 0; i < fis.Length; i++)
{
pathList.Add(fis[i].FullName);
}
//获取指定文件夹下的所有文件夹并递归调用获取文件的方法
DirectoryInfo[] dis = _dir.GetDirectories();
for (int j = 0; j < dis.Length; j++)
{
GetFileList(dis[j]);
}
}
// 文件读取编码
string tex= File.ReadAllText(pathList[i], Encoding.GetEncoding("GB2312"));
// 文件写入编码
File.WriteAllText(pathList[i], nte, Encoding.GetEncoding("GB2312"));
// 文件移动
File.Move(pathList[i], outputFile_Path + Path.GetFileName(pathList[i]));
// 文件复制
File.Copy(pathList[i], outputFile_Path + Path.GetFileName(pathList[i]));
递归删除文件夹 递归遍历指定文件夹及其子文件下的所有文件 文件读取写入编码 文件移动 复制
最新推荐文章于 2024-06-15 22:58:29 发布