WINDOWS 批量修改图片文件名称(流星程序集之二十)

博主家里有一台电脑,存放家庭全部的照片和视频,从智能手机和3G网络发展开始,家里的照片和视频越来越多,已经达到上万个文件。终于,博主找到一个方法整理和保存这些珍贵的数据资料。

一、按年代目录整理照片和视频

按年在磁盘上建立目录,把每一年的视频和照片放到目录中,这样既不会太多,按年代也比较好找。

二、文件名称的编码规则

为了按年区分文件数据,每一张图片和每一部视频,文件名称需要按年代命名,同时加上文件的大小,最终形成的文件编码规则是:年月日_时分秒_文件尺寸.后缀

比如这张图片 20061227_104056_36255.jpg

就是 2006年12月27日_10点40分56秒_36255字节

三、图片文件的拍摄日期和最后修改日期

1、拍摄日期:如果是照相机拍摄的图片,会有一段EXIF数据,里面会存储照片的拍摄日期,我们修改的文件名称,编码日期首先就是要取到这个日期。

2、最后修改日期:有很多的图片文件,没有EXIF数据,我们就取文件本身的最后修改日期,基本上,家庭的照片和视频数据一般是不会去再重新编辑和修改的,所以这个日期也就是和图片产生的年代日期是完全一致的。

四、博主开发了WINDOWS中批量修改图片、视频文件名称的应用程序。

程序的详细说明:

1、批量快速:程序处理指定目录中图片、视频等等文件,因为使用的并行处理,处理上万的文件名称也是分分钟的事情。

2、WIN标准API,简单可靠:因为家里的照片是最珍贵的数据,程序简单的调用了WIN标准MoveTo函数实现文件名称改名。

3、程序取日期逻辑:先取图片EXIF中的拍摄日期,如果没有,会再取文件最后修改日期。

4、未处理说明:如果2张图片的日期和文件大小完全一样,第二张图片,调用WIN标准MoveTo函数改文件名称,会提示“当文件已经存在时,无法再改成相同的名称”而放弃处理第二张图片。这张情况很可能是该目录下有2张完全一样的图片(按照第二条的命名规则),正好还可以用博主的程序识别出重复的图片文件。

5、程序下载(绿色、免费)

链接:https://pan.baidu.com/s/17sMaRav40xYu4K5L1GJUPA?pwd=gdqn 
提取码:gdqn

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/284207.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

低成本TB级数据库技术选型之思考两三点

一、背景 前段时间在搞毕业论文的选题,最头疼的就是大量的文献检索和阅读,从研究的角度上我们可以将文献分为四类: 理论文献:为研究提供理论的框架和基础的文献。这些文献可能并不会和所做的研究直接相关,甚至由于理…

「网络编程」其他重要的协议或技术_ DNS协议 | ICMP协议 | NAT技术

「前言」文章内容是DNS协议、ICMP协议、NAT技术的讲解。 「归属专栏」网络编程 「主页链接」个人主页 「笔者」枫叶先生(fy) 目录 一、DNS协议1.1 背景1.2 域名简介1.3 域名解析的过程 二、ICMP协议2.1 ICMP简介2.2 ping命令2.3 traceroute命令 三、NAT技术3.1 NAT技术背景3.2 …

elasticsearch系列五:集群的备份与恢复

概述 前几篇咱们讲了es的语法、存储的优化、常规运维等等,今天咱们看下如何备份数据和恢复数据。 在传统的关系型数据库中我们有多种备份方式,常见有热备、冷备、全量定时增量备份、通过开发程序备份等等,其实在es中是一样的。 官方建议采用s…

Python 基础语法01

变量声明 #运算 num 1 num 1 print("num 1",num)num - 1 print("num - 1", num)num * 4 print("num * 4",num)num 3 num % 2 print("num%2",num)num ** 2 print("num ** 2", num)num 9 num // 2 print("num // …

20231228在Firefly的AIO-3399J开发板的Android11的挖掘机的DTS配置单前置摄像头ov13850

20231228在Firefly的AIO-3399J开发板的Android11的挖掘机的DTS配置单前置摄像头ov13850 2023/12/28 10:42 【碰到一个很神奇的问题】: 昨天晚上前置摄像头怎么也点不亮!改了巨多的地方!晚上睡觉之前把开发板彻底断电了!今天开电脑…

【JavaFX】JDK11 基于Gson、hutool、Jackson持久化存储实体类数据的解决方案 (读取、追加、去重、写入json对象)

文章目录 开发环境效果前言一、Gson是什么?二、使用步骤1.引入依赖2.创建实体类创建 JsonFileService类创建JsonFileService的实现类 JsonFileServiceImpl三、实现效果开发环境 JDK11IDEA 2023.3Gson、hutool、JacksonJavaFX 11效果 前言 使用JDK1

Easy Rules规则引擎实战

文章目录 简介pom 规则抽象规则Rule基础规则BasicRule事实类Facts:map条件接口动作接口 四种规则定义方式注解方式RuleBuilder 链式Mvel和Spel表达式Yml配置 常用规则类DefaultRuleSpELRule(Spring的表达式注入) 组合规则UnitRuleGroup 规则引…

在线智能防雷监控检测系统应用方案

在线智能防雷监控检测系统是一种利用现代信息技术,对防雷设施的运行状态进行实时监测、管理和控制的系统,它可以有效提高防雷保护的安全性、可靠性和智能化程度,降低运维成本和风险,为用户提供全方位的防雷解决方案。 地凯科技在…

爬取豆瓣电影评论内容、星级、评论时间、支持人数

大家好,我是带我去滑雪,每天教你一个小技巧! 本期爬取豆瓣电影评论人、评论时间、星级、支持人数、评论内容。话不多说,直接上代码: import requests from bs4 import BeautifulSoup import pandas as pd import time…

轻松注册谷歌账号,获取谷歌邮箱(Gmail)

“ 国内手机号无法注册谷歌账户(邮箱)?很好解决呀!” 经常遇到某些朋友需要一个谷歌邮箱,却总是卡在某些步骤。今天特地出个详细教程帮助大家轻松注册谷歌账号,获取谷歌邮箱(Gmail)。…

解密C++中的forward<int>(a)和forward<int >(a):你真的了解它们之间的区别吗?

一文看尽C中的forward完美转发 一、前言二、深入理解forward和完美转发三、对forward<int>(a)的解析四、对forward<int &&>(a)的解析五、forward<int>(a)和forward<int &&>(a)的区别总结 一、前言 完美转发在C中具有重要性&#xff0…

vmware安装openEuler操作系统

vmware安装openEuler操作系统 1、下载openEuler操作系统镜像文件2、安装openEuler操作系统3、配置使用openEuler操作系统 1、下载openEuler操作系统镜像文件 官网下载链接 链接: https://www.openeuler.org/zh/download/ 这里选择 openEuler 22.03 LTS SP2 版本 标准镜像包 文…

Dungeon Scrawl——在线虚拟世界地图制作器

今天带来一款十分有趣的地图应用&#xff0c;同样也是在线地图工具&#xff0c;如果我们想要制作此类风格的地图&#xff0c;这款工具定能助我们一臂之力。 按照惯例先给出网址&#xff1a; Dungeon Scrawl | Free Online D&D Map Maker 进入网站&#xff0c;点击Start S…

Post-hoc Concept Bottleneck Models (PCBM)

ICLR 2023 spotlight 文章链接&#xff1a;https://arxiv.org/abs/2205.15480 代码链接&#xff1a;https://github.com/mertyg/post-hoc-cbm 一、概述 Post-hoc CBM&#xff08;PCBM&#xff09;也是CBM大家族中的一员&#xff0c;因此它的基本逻辑与CBM一致&#xff0c;就是…

从登录测试谈测试用例

谈谈登录测试&#xff1a; 可能你会说&#xff0c;“用户登录”这个测试对象也有点太简单了吧&#xff0c;我只要找一个用户&#xff0c;让他在界面上输入用户名和密码&#xff0c;然后点击“确 认”按钮&#xff0c;验证一下是否登录成功就可以了。的确&#xff0c;这构成了一…

C/C++ 函数的默认参数

下面介绍一项新内容 - 默认参数。 默认参数指的是当函数调用中省略了实参时自动使用的一个值。 例如&#xff0c;如果将 void wow (int n)设置成n 有默认值为1&#xff0c;则函数调用 wow()相当于 wow(1)这极大地提高了使用函数的灵活性。 假设有一个名为left()的函数&#xff…

构建安全的SSH服务体系

某公司的电子商务站点由专门的网站管理员进行配置和维护&#xff0c;并需要随时从Internet进行远程管理&#xff0c;考虑到易用性和灵活性&#xff0c;在Web服务器上启用OpenSSH服务&#xff0c;同时基于安全性考虑&#xff0c;需要对 SSH登录进行严格的控制&#xff0c;如图10…

记一次JSF异步调用引起的接口可用率降低 | 京东云技术团队

前言 本文记录了由于JSF异步调用超时引起的接口可用率降低问题的排查过程&#xff0c;主要介绍了排查思路和JSF异步调用的流程&#xff0c;希望可以帮助大家了解JSF的异步调用原理以及提供一些问题排查思路。本文分析的JSF源码是基于JSF 1,7.5-HOTFIX-T6版本。 起因 问题背景…

【MATLAB】【数字信号处理】基本信号的仿真与实现

目的 1、用MATLAB软件实现冲激序列 2、用MATLAB软件实现阶跃序列 3、用MATLAB软件实现指数序列 4、用MATLAB软件实现正弦序列 内容与测试结果 1、用MATLAB软件实现冲激序列 程序如下&#xff1a; % 1 冲激序列 clc; clear all; n0 -10; nf 50; ns 1; A 1;%起点为-1&…

SpringBoot灵活集成多数据源(定制版)

如来说世界&#xff0c;非世界&#xff0c;是名世界 如来说目录&#xff0c;非目录&#xff0c;是名目录 前言前期准备代码实现演示扩展 前言 本篇博客基于SpringBoot整合MyBatis-plus&#xff0c;如果有不懂这个的&#xff0c; 可以查看我的这篇博客&#xff1a;快速CRUD的秘诀…