图片按日期分类和查看程序(WPF开发)(附源码)
手机方便了我们的生活,可以随时随地拍摄。越来越多的图片堆砌在电脑里。看到杂乱无章的图片,实在感到头痛。手动整理太复杂。基于此,我写了一个小程序,可以将图片按日期整理和查看。按日期查看图片,回忆过去的点点滴滴!
手机拍摄图片时,图片文件会存储拍摄时间,也就是exif信息。通过读取exif信息,可以知晓拍摄时间,程序就是根据该值排序的。查看文件的属性可以看到如下信息:

这个程序有两个功能:按日期整理图片,按日期查看图片。
1 按日期整理图片
功能选项:选择图片存放目录,整理后目录。分类依据:就是分类的粒度,如果选择月,则一个月的图片都放在一个目录。
文件操作--复制:源目录文件不删除;移动:源目录下文件则被删除,转移到新目录。

整理后目录样式:

2 按日期查看图片
也可以不对源目录做任何处理,只是按日期查看。选择需要查看的目录,点击扫描。根据图片包含的日期,生成树。点击月份、日;属于该日期的图片,就会显示处理。

后记:程序本身并不复杂,但是用到了多项技术。麻雀虽小五脏俱全。用到的技术有: 异步处理、绑定、模板、递归等。细节我不多述,可以查看源代码。
编写这个程序,我只花了一天的工作量,可以看到wpf处理的灵活性。
源码下载:https://download.csdn.net/download/qq_29939347/10766282
图片按日期分类和查看程序(WPF开发)(附源码)的更多相关文章
- 分类导航菜单的制作(附源码)--HTML
不多说,直接贴代码哈!有疑问,可追加评论哈! demo.html: <!DOCTYPE html><html> <head> <title>分类导航菜单 ...
- Asp.NetCoreWebApi图片上传接口(二)集成IdentityServer4授权访问(附源码)
写在前面 本文地址:http://www.cnblogs.com/yilezhu/p/9315644.html 作者:yilezhu 上一篇关于Asp.Net Core Web Api图片上传的文章使 ...
- Android7.0手机程序保活(附源码下载)
项目地址,求starhttps://github.com/979451341/AppAlive 本人在学习音视频时无意发现的黑科技,发现在使用AudioTrack播放音乐时,使用手机的一键清理发现程序 ...
- wpf 模拟3D效果(和手机浏览图片效果相似)(附源码)
原文 wpf 模拟3D效果(和手机浏览图片效果相似)(附源码) pf的3D是一个很有意思的东西,类似于ps的效果,类似于电影动画的效果,因为动画的效果,(对于3D基础的摄像机,光源,之类不介绍,对于依 ...
- 基于olami开放语义平台的微信小程序遥知之源码实现
概述 实现一个智能生活信息查询的小秘书功能,支持查天气.新闻.日历.汇率.笑话.故事.百科.诗词.邮编.区号.菜谱.股票.节目预告,还支持闲聊.算24点.数学计算.单位换算.购物.搜索等功能. 使用方 ...
- 在Winform窗体中使用WPF控件(附源码)
原文:在Winform窗体中使用WPF控件(附源码) 今天是礼拜6,下雨,没有外出,闲暇就写一篇博文讲下如何在Winform中使用WPF控件.原有是我在百度上搜索相关信息无果,遂干脆动手自己实现. W ...
- wpf 模拟抖音很火的罗盘时钟,附源码,下载就能跑
wpf 模拟抖音很火的罗盘时钟,附源码 前端时间突然发现,抖音火了个壁纸,就是黑底蕾丝~~~ 错错错,黑底白字的罗盘时钟! 作为程序员的我,也觉得很新颖,所以想空了研究下,这不,空下来了就用wpf, ...
- ASP.NET程序读取二代身份证(附源码)
原文:ASP.NET程序读取二代身份证(附源码) 一般来说winform应用程序解决这个问题起来时很容易的,web应用程序就麻烦一点了. 这里我说说我的解决思路: 一.你必要有联机型居民身份证阅读器一 ...
- eclipse中无法查看引用的jar包源码
本文来源:http://blog.csdn.NET/zljjava/article/details/7545270(这篇博客也是转载的,向最原始的作者致敬) 1.下载JAD jad官方地址的官方下载地 ...
随机推荐
- 18) maven 项目结构:继承
Project Inheritance [ɪn'herɪt(ə)ns] https://maven.apache.org/guides/introduction/introduction-to-the ...
- LoadRunner改脚本
加action,不支持嵌套大括号 Action(){int iCt = 0; iCt = lr_output_message("abcdefg"); iCt = funA(3,5) ...
- pyppeteer使用笔记
pyppeteer -- python版本的puppeteer,一个强大的chronium headless浏览器API 最近搞天猫用了一波儿,记录一下. 先上文档: https://miyakogi ...
- CentOS 5.5 防火墙开启、关闭以及开放指定端口
之前有讲过公司新买的服务器使用的是CentOS5.5, 部署好Tomcat之后却发现输入114.80.*.*:8080(即ip:8080)却无法显示Tomcat默认的首页. 因为以前部署在Win Se ...
- java基础-day18
第07天 集合 今日内容介绍 u HashSet集合 u HashMap集合 第1章 HashSet集合 1.1 Set接口的特点 Set体系的集合: A:存入集合的顺序和取出集合的顺序不一 ...
- 记一次spring里bean无法注入的历程
应用启动的时候失败,看了下异常,是这个---NoUniqueBeanDefinitionException. 大家都知道,这是因为有俩个类型相同的实例,在被注入的时候,spring不知道该用哪个. 但 ...
- spark 中划分stage的思路
窄依赖指父RDD的每一个分区最多被一个子RDD的分区所用,表现为 一个父RDD的分区对应于一个子RDD的分区 两个父RDD的分区对应于一个子RDD 的分区. 宽依赖指子RDD的每个分区都要依赖于父RD ...
- eclipse 离线安装插件报cannot perform operation.Computing alternate solutions...解决办法
当不能连接外网,离线安装SVN插件时,可能会发现以下问题:eclipse长时间停留在下图所示状态,提示“cannot perform operation.Computing alternate sol ...
- [leet code 198]House Robber
1 题目 You are a professional robber planning to rob houses along a street. Each house has a certain a ...
- 一些LinuxC的小知识点(二)
一.read系统调用 系统调用read的作用是:从与文件描述符filedes相关联的文件里读入nbytes个字节的数据,并把它们放到数据区buf中.它返回实际读入的字节数.这可能会小于请求 ...