如何用C#中的某个单词删除所有文件

时间:2016-01-19 11:35:08

标签: c# windows file io delete-file

所以,我有一个文件夹。我想删除包含特定字符/字母/数字/符号组合的所有文件在文件名中

我想知道如何在C#中这样做?

我所知道的是,我必须使用System.IO;

确定! Mods随意锁定这篇文章!感谢下面的评论,我使用了以下代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;


namespace File_Deleter
{
    class Program
    {

    static void Main(string[] args)
    {
        String path = "F:\\Downloads\\random";

        String[] fileNames = new String[20];
        fileNames = Directory.GetFiles(path);

        for (int i = 0; i <= 87; i++)
        {

            if (fileNames[i].Contains("(1)"))
            {
                 Console.WriteLine(fileNames[i]);
                 File.Delete( fileNames[i]);

            }

        }


        Console.ReadLine();

    }
}

}

1 个答案:

答案 0 :(得分:1)

  1. 创建模式列表
  2. ForEach模式的模式
  3. 获取匹配模式的文件列表
  4. 文件中的FroEach文件
  5. 删除文件
  6. 结束ForEach
  7. 结束ForEach
  8. OR

    1. 获取目录中的所有文件
    2. 搜索模式列表并存储匹配的文件名
    3. 删除所有存储的文件
    4. <强> HINT

      您可以使用Directory.GetFiles — (String, String)

      关于您的代码

      不必要的初始化

      String[] fileNames = new String[20];
      

      在这种情况下,最好使用foreach insteed for

      froeach(var file in fileNames)
      ...
      if (file .Contains("(1)"))
      

      如果您不想使用foreach,请不要以这种方式使用for

      for (int i = 0; i <= 87; i++)
      

      i <= 87中的常数87是非常糟糕的做法,请使用fileNames.Length