繁体   English   中英

如何在 C# 中的目录中移动文件

[英]how can i move files through directories in c#

string path = @"C:\Users\peixo\OneDrive\Ambiente de Trabalho\APTIV\moving files\folder";
string destpath = @"C:\Users\peixo\OneDrive\Ambiente de Trabalho\APTIV\moving files\folder1";
    
public Form1()
{
    string[] dele = Directory.GetFiles(destpath);
    string[] files = Directory.GetFiles(path);

    foreach (string file in files)
    {
        foreach (string rem in dele)
        {
            File.Delete(rem);
        }

        // obter informação dos ficheiros
        FileInfo fi = new FileInfo(file);

        // se for a menos de 7 dias vai para...
        if (fi.LastWriteTime < DateTime.Now.AddDays(-7))
        { 
            File.Copy(file, $"{destpath}\\{Path.GetFileName(file)}");
        }
    } ... (more code)
}

关键是在复制之前删除所有文件并仅复制最后一次写入是在 7 天之前的文件,但是出了点问题,它开始复制所有文件而不是最后一次写入。

试试下面的代码,如果你仍然遇到问题,请告诉我。

public Form1()
{
    string[] dele = Directory.GetFiles(destpath);
    string[] files = Directory.GetFiles(path);

    foreach (string rem in dele)
    {
       File.Delete(rem);
    }
    foreach (string file in files)
    {
        // obter informação dos ficheiros
        FileInfo fi = new FileInfo(file);

        // se for a menos de 7 dias vai para...
        if (fi.LastWriteTime < DateTime.Now.AddDays(-7))
        { 
            File.Copy(file, $"{destpath}\\{Path.GetFileName(file)}");
        }
    } ... (more code)
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM