一、写在前面:
前几天写了一个《批处理整理安卓手机微信导出的视频和照片》,朋友们的反响还不错,但是反馈说不会使用批处理的朋友也很多,抽时间用按键精灵写了一个微信导出视频及照片重命名工具程序,方便大家使用。多说一句,本人非专业程序员,如果专业程序员看到这里,请喷的时候轻一点。
看过《批处理整理安卓手机微信导出的视频和照片》文章的都知道,我们安卓手机保存到手机的视频和照片总共有四种,分别是:
(一)在微信聊天界面点开视频然后保存视频的情况,文件名形如"1592032901199.mp4"
(二)在微信聊天界面点开照片然后保存照片的情况,文件名形如"mmexport1592032535584.jpg"
(三)打开微信聊天界面直接录视频发给别人的情况,文件名形如"wx_camera_1592033060483.mp4"
(四)打开微信聊天界面直接拍照片发给别人的情况,文件名形如"wx_camera_1592033060483.jpg"
程序目前做到的功能:将如上四种命名方式的视频和照片命名成形如“VID_20200620_100805.mp4”、“IMG_20200620_100805.jpg”的安卓手机照相机标准命名,并按照月份进行文件夹分组整理。
二、软件界面介绍:
打开软件后首先弹出的是软件介绍界面,描述了四种安卓手机微信导出的视频和照片的命名格式:
微信导出视频及照片重命名工具软件介绍界面
点击左下角“开始使用”按钮,即可进入程序的主界面,如下图,主界面设计非常的银(cao)杏(dan),只为解决问题而设计的界面,唯一的亮点就是右侧的超能查派(科幻类电影,强烈大家一看)图像,为什么放这个图像,是因为我想终究某一天,我可以将我的元神传到互联网,从而无处不在,实现永生。软件采用了多线程方式,避免大家不选择路径直接点击运行造成程序后台错误运行。:
微信导出视频及图片重命名工具软件主界面
三、软件使用方法介绍
重要提醒:这个是本人编辑的软件,最后我会附上源码,有些国产高级杀毒软件可能会产生误报,所以在使用时如果杀毒软件报毒,请退出杀毒软件。真的没有毒,有毒的我想编目前还编不出来(画外音:我会努力的)。
为了防止大家误(you)操(yi)作(huo),因此需要大家设置两个文件夹,输入文件夹中存放待整理的视频和照片(程序目前只处理文件夹根目录的视频和照片,不支持嵌套子文件夹中的视频和照片整理),以便保留源文件备份。输出文件夹存放整理后的视频和照片。当然考验过我软件的可靠性之后,你可以输入输出文件夹都设置为同一个文件夹路径(这样速度最快,软件不用将输入文件夹中的视频和照片拷贝到输出文件夹中再处理,当然这样做也就没有备份一说了),是完全可行的。如图设置完文件夹路径后,就可以点击右侧“开始”按钮,愉快的运行了!
微信导出视频及照片重命名工具设置输入和输出文件夹示意
注意,如果你设置的输入文件夹文件非常多且输入输出设置的是不同的文件夹,软件运行将会较慢, 因为时间主要耗在拷贝文件上,程序运行完毕后会弹出如下提示,所以程序运行过程较长的话,请勿以为程序已停止运行,点击确定直接跳转到输出文件夹查看整理后的视频和照片,点击取消仅查看程序运行日志。
微信导出视频及照片重命名工具运行完毕示意
点击确定跳转到输出文件夹,大家可以看到已经按月份及标准命名整理好了,并且有日志记录:
微信导出视频及照片重命名工具程序输出文件夹展示
微信导出视频及照片重命名工具程序整理好视频和照片展示
微信导出视频及照片重命名工具程序日志展示
四、软件源码参考:
// Edit by 半截入了土的少年// 2020年06月20日// 程序版本V04Event Form1.LoadEnd EventDimenv 线程IDEvent Form1.Button1.Click 线程ID = BeginThread(循环)End EventSub 循环() If Form1.BrowseBox1.Path <> "" Then path1=Form1.BrowseBox1.Path Else MessageBox "未设置输入文件夹,请选择后运行" Call 停止() End If If Form1.BrowseBox2.Path <> "" Then path2=Form1.BrowseBox2.Path Else MessageBox "未设置输出文件夹,请选择后运行" Call 停止() End If Set fs = CreateObject("Scripting.FileSystemObject") fs.CopyFolder path1, path2 文件名数组 = Lib.文件.遍历指定目录下所有文件名(path2) Set fso = CreateObject("Scripting.FileSystemObject") Set a = fso.CreateTextFile(path2 & "操作日志.txt", True) a.WriteLine ("模块1:文件重命名日志") For i=0 to UBound(文件名数组)-1 //1、可处理在微信聊天界面点开视频然后保存视频的情况,文件名形如“1592032901199.mp4” If len(文件名数组(i)) = 17 and right(文件名数组(i), 4) = ".mp4" and left(文件名数组(i), 13) > 1295539200000 Then unix时间戳 = left(文件名数组(i), 13) / 1000 Call 格式化时间函数() Call Plugin.File.ReNameFile(path2 & "" & 文件名数组(i), path2 & "VID_" & 格式化时间 & ".mp4") a.WriteLine (path2 & "" & 文件名数组(i) & " 重命名为 " & path2 & "VID_" & 格式化时间 & ".mp4 成功") //2、可处理打开微信聊天界面直接录视频发给别人的情况,文件名形如“wx_camera_1592033060483.mp4” ElseIf len(文件名数组(i)) = 27 and right(文件名数组(i), 4) = ".mp4" and mid(文件名数组(i), 11, 13) > 1295539200000 Then unix时间戳 = mid(文件名数组(i), 11, 13) / 1000 Call 格式化时间函数() Call Plugin.File.ReNameFile(path2 & "" & 文件名数组(i), path2 & "VID_" & 格式化时间 & ".mp4") a.WriteLine (path2 & "" & 文件名数组(i) & " 重命名为 " & path2 & "VID_" & 格式化时间 & ".mp4 成功") //3、可处理打开微信聊天界面直接拍照片发给别人的情况,文件名形如“wx_camera_1592033060483.jpg” ElseIf len(文件名数组(i)) = 27 and right(文件名数组(i), 4) = ".jpg" and mid(文件名数组(i), 11, 13) > 1295539200000 Then unix时间戳 = mid(文件名数组(i), 11, 13) / 1000 Call 格式化时间函数() Call Plugin.File.ReNameFile(path2 & "" & 文件名数组(i), path2 & "IMG_" & 格式化时间 & ".jpg") a.WriteLine (path2 & "" & 文件名数组(i) & " 重命名为 " & path2 & "VID_" & 格式化时间 & ".jpg 成功") //4、可处理在微信聊天界面点开照片然后保存照片的情况,文件名形如“mmexport1592032535584.jpg” ElseIf len(文件名数组(i)) = 25 and right(文件名数组(i), 4) = ".jpg" and mid(文件名数组(i), 9, 13) > 1295539200000 Then unix时间戳 = mid(文件名数组(i), 9, 13) / 1000 Call 格式化时间函数() Call Plugin.File.ReNameFile(path2 & "" & 文件名数组(i), path2 & "IMG_" & 格式化时间 & ".jpg") a.WriteLine (path2 & "" & 文件名数组(i) & " 重命名为 " & path2 & "VID_" & 格式化时间 & ".jpg 成功") Else unix时间戳 = 0 a.WriteLine (path2 & "" & 文件名数组(i) & " 重命名失败,请检查文件名是否符合规则!") End If Next a.WriteLine ("模块2:文件分组日志") 文件名数组2 = Lib.文件.遍历指定目录下所有文件名(path2) For j = 0 To UBound(文件名数组2) - 1 If (left(文件名数组2(j), 3) = "VID" or left(文件名数组2(j), 3) = "IMG") and len(文件名数组2(j)) = 23 Then 年份 = mid(文件名数组2(j), 5, 4) 月份 = mid(文件名数组2(j), 9, 2) Call Plugin.File.CreateFolder(path2 & "" & 年份 & "年" & 月份 & "月") Call Plugin.File.MoveFile(path2 & "" & 文件名数组2(j), path2 & "" & 年份 & "年" & 月份 & "月" & "" & 文件名数组2(j)) a.WriteLine ((path2 & "" & 文件名数组2(j) & " 移动到 " & path2 & "" & 年份 & "年" & 月份 & "月" & "" & 文件名数组2(j)) & " 成功") Else a.WriteLine ((path2 & "" & 文件名数组2(j) & " 移动到 " & path2 & "" & 年份 & "年" & 月份 & "月" & "" & 文件名数组2(j)) & " 失败,请检查文件是否重复或文件名是否符合命名规则!") End If Next a.Close If MsgBox("已完成文件处理,请点击确定前往" & path2 & "文件夹查看结果,点击取消打开操作日志", vbOKCancel) = 1 Then RunApp "explorer " & path2 & "" Else RunApp "notepad "& path2 &"操作日志.txt" End If End Sub Function 格式化时间函数() 系统时间=DateAdd("s",unix时间戳,"1970/1/1 8:00:00") yy = Year(系统时间) mm = month(系统时间) If mm < 10 Then mm="0"&mm End If dd = day(系统时间) If dd < 10 Then dd="0"&dd End If hh = hour(系统时间) If hh < 10 Then hh="0"&hh End If mi = minute(系统时间) If mi < 10 Then mi="0"&mi End If ss = second(系统时间) If ss < 10 Then ss="0"&ss End If 格式化时间 = yy & mm & dd &"_"& hh & mi & ss End FunctionSub 停止() StopThread 线程ID End SubEvent Form1.Label3.ClickEnd EventEvent Form1.Label4.ClickEnd EventEvent Form1.Label5.ClickEnd EventEvent Form1.Label1.ClickEnd EventEvent Form1.Label2.ClickEnd Event
五、软件下载地址:
百度网盘自取:链接:***/s/1B27Ls3XC-wpR_9M-eOthsg
提取码:gv88
声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:dandanxi6@qq.com