【问题标题】:Visual C#: Move multiple files with the same extensions into another directoryVisual C#:将具有相同扩展名的多个文件移动到另一个目录
【发布时间】:2014-06-18 22:38:32
【问题描述】:

伙计们。我有一个无法解决的问题: 我有 2 个文件夹,我使用 folderBrowserDialog 选择,源目录中的大量文件需要移动到目标目录。但是,我只需要移动具有特定扩展名的文件,如 .txt 或我可以从文本框中获得的任何其他扩展名。 那我该怎么做呢?

【问题讨论】:

  • Ruff 伪; DirectoryInfo(sourceDir + "*.somextension").GetFiles().Foreach((a) => a.Move(targetDir))
  • 你能解释一下如何或给一个链接在哪里可以找到它?

标签: c# file move


【解决方案1】:

试试这个:

用于复制文件...

foreach (string s in files)
{
   File.Copy(s, "C:\newFolder\newFilename.txt");
}

用于移动文件

foreach (string s in files)
{
   File.Move(s, "C:\newFolder\newFilename.txt");
}

将文件移动到目录的示例:

string filepath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
DirectoryInfo d = new DirectoryInfo(filepath);

foreach (var file in d.GetFiles("*.txt"))
{
      Directory.Move(file.FullName, filepath + "\\TextFiles\\" + file.Name);
}

Move所有files从桌面到目录“TextFiles”。

【讨论】:

    【解决方案2】:

    首先使用Directory.GetFiles()获取具有指定扩展名的所有文件,然后遍历列表中的每个文件并将它们移动到目标目录。

    //Assume user types .txt into textbox
    string fileExtension = "*" + textbox1.Text;
    
    string[] txtFiles = Directory.GetFiles("Source Path", fileExtension);
    
    foreach (var item in txtFiles)
    {
       File.Move(item, Path.Combine("Destination Directory", Path.GetFileName(item)));
    }
    

    【讨论】:

      猜你喜欢
      • 2020-04-11
      • 1970-01-01
      • 2018-03-13
      • 2019-12-14
      • 1970-01-01
      • 2015-06-12
      • 1970-01-01
      • 2019-07-14
      • 1970-01-01
      相关资源
      最近更新 更多