【问题标题】:Moving Folder to same named Folder将文件夹移动到同名文件夹
【发布时间】:2016-04-13 07:39:56
【问题描述】:

我有一些文件夹,我在程序运行时检查它。 我删除了不必要的文件夹并将选中的文件夹返回到其他目录。

我的问题是我总是遇到异常。我真的不知道为什么。 顺便说一句:当前表和新表具有相同的名称 : 翻译,因为它是德语:无法创建数据,因为它已经存在。 我的代码:

public void CreateCheckedStructure() { 

        List<string> checkedDirNew = Program.RemoveTempFolders(GetAllFromDir(Settings.Default.NewFolder));
        List<string> checkedDirCurrent = Program.RemoveTempFolders(GetAllFromDir(Settings.Default.CurrentFolder));

        foreach(string checkedNew in checkedDirNew){

            DirectoryInfo dirInfoNew = new DirectoryInfo(checkedNew);
            foreach (string checkedCurrent in checkedDirCurrent) {
                DirectoryInfo dirInfoCurrent = new DirectoryInfo(checkedCurrent);
                if(dirInfoNew.Name.Equals(dirInfoCurrent.Name)){
                    string checkedFoldersPath = Settings.Default.CheckedTables + "\\" + dirInfoCurrent.Name;
                    Directory.CreateDirectory(checkedFoldersPath);
                    Directory.CreateDirectory(checkedFoldersPath+"\\New");
                    Directory.CreateDirectory(checkedFoldersPath + "\\Current");
                    dirInfoCurrent.MoveTo(checkedFoldersPath + "\\Current");
                    dirInfoNew.MoveTo(checkedFoldersPath + "\\New");
                    break;
                }
            }        
        }

    }

【问题讨论】:

  • 我编辑了我的问题 :)

标签: c# io filesystems


【解决方案1】:

您正在创建checkedFoldersPath+"\\New",然后尝试在其上复制另一个文件夹。发生错误是因为它已经存在。如果您尝试合并这两个文件夹,则必须将所有子文件和子目录(递归)移动到新文件夹,然后删除原始文件夹。

看到这个答案:C# merge one directory with another

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-07-11
    • 2020-01-13
    • 2018-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-17
    相关资源
    最近更新 更多