C#生成年月日三级目录

  • 前言
  • 一、思路
  • 二、关键代码
    • 1.生成年月日三级文件夹方法
    • 2.调用
    • 3.最后效果
  • 总结

前言

最近写了一个小程序,实现文件自动按照最后修改时间存入年月日分级目录。

一、思路

  1. 程序导入所有文件名称
  2. 查找所有文件最后修改时间
  3. 创建dictionary将文件名与最后修改时间对应
  4. 遍历dictionary移动文件病创建三级文件夹

二、关键代码

1.生成年月日三级文件夹方法

代码如下:

/// <summary>
/// 生成“年 月 日”分级文件夹
/// </summary>
/// <param name="pathParam">源目录,年,月,日</param>
private void GenDirectory(string[] pathParam)
{string yearPath = System.IO.Path.Combine(pathParam[0], pathParam[1]);if (!Directory.Exists(yearPath)){Directory.CreateDirectory(yearPath);}string monthPath = System.IO.Path.Combine(yearPath, pathParam[2]);if (!Directory.Exists(monthPath)){Directory.CreateDirectory(monthPath);}string dayPath = System.IO.Path.Combine(monthPath, pathParam[3]);if (!Directory.Exists(dayPath)){Directory.CreateDirectory(dayPath);}
}

2.调用

代码如下():

/// <summary>
/// 移动文件到指定目录
/// </summary>
private void MoveFile()
{foreach (var item in dic){string fileName = item.Key.Replace(SrcDir, "").Trim('\\');//从源文件名称中提取文件名DateTime createDate = Convert.ToDateTime(item.Value);   //文件最后修改日期            string[] pathParam = new string[] {DstDir,//文件新的根目录createDate.Year.ToString()+ "年",createDate.Month.ToString() + "月",createDate.Day.ToString()+ "日",};  string Path = System.IO.Path.Combine(pathParam);    //文件新的目录string fullPath = System.IO.Path.Combine(Path, fileName);    //新的完整文件地址if (!Directory.Exists(Path)){GenDirectory(pathParam);}if (!File.Exists(fullPath)){File.Move(item.Key, fullPath);}}
}

3.最后效果


相关程序资源下载:程序源码


总结

提示:以上就是今天的内容,

C#生成年月日三级目录相关推荐

  1. python-图像分类数据集,给三级目录里的文件打标签,并且标签根据第二级级目录自动生成

    ​ # -*- coding: utf-8 -*- import os #分三级目录,如A/B/a.jpg #input_path为一级目录: # def creat_filelist(input_p ...

  2. 利用select实现年月日三级联动的日期选择效果

    前面的话 关于select控件,可能年月日三级联动的日期选择效果是最常见的应用了.本文是选择框脚本的实践,下面将对日期选择效果进行详细介绍 演示 规划 默认情况下,年.月.日分别由3个select控件 ...

  3. flowable 中文文档_取出word文档文字内容生成加了目录、标号和页码的PDF文件

    word文档内的一页: 将文本取出来,生成自定义格式的PDF文件: 从word取出文本时标题的标号和页码是取不出来的,要自己加.另外就是目录也要自己生成和添加: 代码和解释如下: from repor ...

  4. Markdown生成左边框目录

    自从接触了Markdown后就一直用这种语言写学习笔记. 但是一直在纠结如何生成方便的目录. 下面是我搞得一个简单的模板可以生成固定在屏幕左边的目录. 就是这种 第一步,编辑器 首先,需要一个可以自动 ...

  5. python三级_Python三级目录展示方法

    要求: 1.三级菜单 2.可依次选择进入各子菜单,选择序号进入目录 3.输入b返回上级目录,q退出更改目录 代码实现: #!/bin/env python #!--*--coding:utf-8 -- ...

  6. markdown自动生成侧边栏TOC /目录

    markdown自动生成侧边栏TOC /目录 模板地址 : https://github.com/huyande/MarkdownTemplate.git

  7. java - 把日志生成到指定目录

    2019独角兽企业重金招聘Python工程师标准>>> 1.按天小时生成日志文件 log4j.appender.ruiming.DatePattern='_'yyyy-MM-dd-H ...

  8. latex自动生成中文目录_自动生成工作表目录三种方法,看哪种适合你?

    如果在一个工作簿内有很多工作表需要去维护管理,一个个的查找显然是很麻烦的,建立一个工作表的导航目录无疑是最便捷的方法. 下面介绍三种生成工作表目录的方法: 一.利用宏表函数生成可导航目录 第1步:定义 ...

  9. php将年月日_php生成年月日下载列表的方法

    本文实例讲述了php生成年月日下载列表的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下:function mdy($mid = "month", $did = ...

最新文章

  1. Java API —— BigInteger类
  2. 从头开始 启动开源电商项目jShop
  3. andorid 查看OpenCv Mat的Debug信息
  4. 一、策略模式(Strategy Pattern)
  5. 2018把坚韧坚持到底
  6. BPM调用有webservice接口的.NET插件
  7. Linux操作Oracle(17)——linux oracle启动时 :各种报错 解决方案(2020.07.30更新...)
  8. mysql 命令删库名,MySQL控制台删除数据库命令 drop database 数据库名
  9. (MYSQL) Unknown table 'a' in MULTI DELETE的解决办法
  10. android:windowSoftInputMode属性;界面关闭后软键盘不隐藏的解决方法;
  11. mysql 注入攻击与防御_防御SQL注入和XSS攻击
  12. R语言快速绘制多因素回归分析森林图(1)
  13. 欧拉角与方向余弦矩阵之间的转换
  14. 关于虚拟机Ubuntu联网问题
  15. OpenCV中出现“Microsoft C++ 异常: cv::Exception,位于内存位置 0x0000005C8ECFFA80 处。”的异常
  16. [docker]dockerfile简介与应用
  17. 懒人必备神器 !一个创意十足的 Python 命令行工具
  18. 计算机应用技术题,计算机应用技术复习题.doc
  19. 如何批量预览并一键下载pexels视频和图片
  20. 60项基于深度学习的SLAM顶会开源方案汇总(上篇)

热门文章

  1. 大年三十晚上腾讯服务器不稳定,“大年三十一定要换的新年个签”
  2. Sqlyog之excel数据导入方法
  3. Jenkins在windows下的安装和部署
  4. 工作一年了,回顾过去一年的点滴(一)
  5. 介绍7种分析问题的思维方法
  6. 两个虚拟相机对应一个物理相机的解决方案
  7. 利用 GitHub 从零开始搭建一个博客
  8. 修复计算机黑屏,笔记本电脑黑屏怎么修复 笔记本电脑黑屏修复方法【详解】...
  9. Eclipse 删除工作空间的记录
  10. x7系统怎么锁定计算机,【vivo X7使用总结】功能|模式|解锁|系统|操作_摘要频道_什么值得买...