我想每次在这里新建文件夹的同时,删除当前目录下10小时前新建的文件和文件夹,该怎么写语句?
    private  void createFolder()
    {
        if (!Directory.Exists(uploadpath))
        {
            Directory.CreateDirectory(uploadpath);//想在这里新建文件夹的同时删除旧文件。
        }
    }

解决方案 »

  1.   

    你肯定知道旧文件路径吧,直接delete
      

  2.   

    DirectoryInfo di = new DirectoryInfo(uploadpath);
    di.GetFiles()[0].CreationTime
      

  3.   

    DateTime date = new FileInfo(文件名).CreationTime;
    按照这个date去判断
      

  4.   

     List<string> files = new List<string>();
        DateTime begin = ...;
        DateTime end = ..;
        foreach (string filepath in Directory.GetFiles(@"c:\test", "*.txt", SearchOption.AllDirectories))
        {
            FileInfo fi = new FileInfo(filepath);
            if (fi.CreationTime>=begin && fi.CreationTime<= end)
            {
                files.Add(filepath);
            }
        }遍历files 删除
      

  5.   

    我不是程序员,试了半天也不行~~~
    我的站点目录是这样的:
    网站根目录下有文件夹test
    原有程序Directory.CreateDirectory(uploadpath);建立了“/test/abc/a1/”这个文件夹。新建这个文件夹之后我想同时删除“/test/abc/”文件夹里十小时前生成的所有文件夹和文件,同时删除“/test/def/”文件夹里的文件。
    这些语句该怎么写?
    我不是程序员,希望能帮我直接写出全部语句,谢谢!
      

  6.   

    refer:
    http://www.cnblogs.com/insus/articles/1431986.html
      

  7.   


    private static void FindFiles(string filepath)
    {
    if(filepath!=null)
    {
    DirectoryInfo di = new DirectoryInfo(filepath);
    if(di!=null)
    {
    FileInfo[] files = di.GetFiles("*.cs",SearchOption.AllDirectories);
    foreach(FileInfo fi in files)
    {
    DateTime filect = fi.CreationTime; if(DateTime.Now.Subtract(filect).Hours>=10)
    {
    fi.Delete();
    }
    }
    }
    }
    }
      

  8.   


    在foreach后在加上创建文件夹即可。
    Directory.CreateDirectory(uploadpath);//想在这里新建文件夹的同时删除旧文件
      

  9.   

    我添加了你这段代码,为什么就不能上传文件了?我的代码:     * 按照日期自动创建存储文件夹
         */
        private  void createFolder()
        {
            if (!Directory.Exists(uploadpath))
            {
                Directory.CreateDirectory(uploadpath);
    private static void FindFiles(string filepath)
    {
    if(filepath!=null)
    {
    DirectoryInfo di = new DirectoryInfo(filepath);
    if(di!=null)
    {
    FileInfo[] files = di.GetFiles("*.cs",SearchOption.AllDirectories);
    foreach(FileInfo fi in files)
    {
    DateTime filect = fi.CreationTime;
    if(DateTime.Now.Subtract(filect).Hours>=10)
    {
    fi.Delete();
    }
    }
    }
    }        
    }        }
        }
      

  10.   

    是不是路径的问题?uploadpath和filepath没有关联?
    请高手看看我在9楼写的文件件结构,帮我改一下路径变量吧~~
    先谢了,百分结贴。
      

  11.   

    文件一般以时间命名吧,一般用DateTime.Now.Ticks;命名文件名,这样就能删除10小时之前的文件了