精易论坛

标题: 按规则批量修改文件名 [打印本页]

作者: taobar    时间: 2013-8-24 17:10
标题: 按规则批量修改文件名
现在有一个文件夹"f:\ab",里面有很多文件,都是乱的数字字母,没有扩展名。
现在需要改变所有文件的名称。并存放在不同目录里面。

改名的规则如下:
122342改成f:\dd\so\8.jpg
123452改成f:\dd\94\5.jpg
12wer2改成f:\36\so\8.jpg
122352改成f:\dg\422\23.cdr
197742改成f:\qd\s3o\18.jpg
129456改成f:\de\23\9.ai
……
规则每行一条,保存在文本文件里面。
有没有什么方法批量处理啊。手工改会死人的,几千个呢。


作者: Hoibben    时间: 2013-8-24 17:10
月光族 发表于 2013-8-24 20:12
高手在哪里@Hoibben

这个不难吧,只是卤煮描述有点含糊。。。

122342改成f:\dd\so\8.jpg

这里的122342全路径是啥?d:\abc\122342?还是d:\abc\nima122342nidie

还有就是这个改成f:\dd\so\8.jpg就不止是改名了吧,应该包含移动文件了吧???
作者: 天中小和尚    时间: 2013-8-24 17:17
不知道你要改成什么   也不知道你分的有没有什么规则
还有就是不知道你本来的文件名是不是都是6位数字
作者: taobar    时间: 2013-8-24 17:21
wf54321 发表于 2013-8-24 17:17
不知道你要改成什么   也不知道你分的有没有什么规则
还有就是不知道你本来的文件名是不是都是6位数字

规则就是红色的字,原始文件名的长度不是一样的。
作者: 天中小和尚    时间: 2013-8-24 17:22
你那叫什么规则啊   全是乱的   
作者: dengye2008    时间: 2013-8-24 17:35
既然没有什么规则,那你干脆 搜索那个文件夹里的所有文件,然后循环把他们按123....的顺序改好了
作者: dengye2008    时间: 2013-8-24 17:40
122342改成f:\dd\so\8.jpg

像你这个,根本不知道你为什么要改成8.jpg,又为什么要放在SO的文件夹里,根据什么来判断类型,你说的没有扩展名,那你怎么知道把这个改成JPG,有的又改成ai
作者: 维斯    时间: 2013-8-24 17:40
太乱,没看懂
作者: taobar    时间: 2013-8-24 17:53
wf54321 发表于 2013-8-24 17:22
你那叫什么规则啊   全是乱的

唉,就是乱啊,实际情况是之前把电脑上的各个文件夹的文件备份到百度网盘里面了。结果不知道因为什么该死的原因,网盘文件没有了,本地的文件也没有了。

现在在本地找到了文件的缓存。不过他把所有的文件都放在了同一个目录,并且所以的文件名都改成了一串数字+字母组合。找到一个文件,这个文件记录了缓存文件对应的目录和原始文件名。现在想根据这个文件把缓存恢复成原文件,放到原位置。
那个文件:http://pan.baidu.com/share/link? ... 8&uk=3691494234

作者: taobar    时间: 2013-8-24 17:54
dengye2008 发表于 2013-8-24 17:40
122342改成f:\dd\so\8.jpg

像你这个,根本不知道你为什么要改成8.jpg,又为什么要放在SO的文件夹里,根据 ...

唉,就是乱啊,实际情况是之前把电脑上的各个文件夹的文件备份到百度网盘里面了。结果不知道因为什么该死的原因,网盘文件没有了,本地的文件也没有了。

现在在本地找到了文件的缓存。不过他把所有的文件都放在了同一个目录,并且所以的文件名都改成了一串数字+字母组合。找到一个文件,这个文件记录了缓存文件对应的目录和原始文件名。现在想根据这个文件把缓存恢复成原文件,放到原位置。
那个文件:http://pan.baidu.com/share/link? ... 8&uk=3691494234

作者: dengye2008    时间: 2013-8-24 18:25
你之前备份在电脑里的全路径是什么
作者: taobar    时间: 2013-8-24 19:21
dengye2008 发表于 2013-8-24 18:25
你之前备份在电脑里的全路径是什么

之前就是“F:\桌面备份”。
作者: 月光族    时间: 2013-8-24 20:12
高手在哪里@Hoibben   
作者: dengye2008    时间: 2013-8-24 20:30
这样,你不是有XML文件吗,定义一个自定义类型,成员有:原文件名和MD5,然后把它里面的原文件名和MD5取出来,分别放在数组变量里,再用计次循环去寻找文件,如果找到的文件名和MD5相符,就把文件名改成原文件名,这样应该就可以了
作者: dengye2008    时间: 2013-8-24 20:41
原文件名有多级目录,改名之前判断下目录是否存在,不存在就创建,存在就直接移过去
作者: taobar    时间: 2013-8-25 09:30
Hoibben 发表于 2013-8-24 21:00
这个不难吧,只是卤煮描述有点含糊。。。

122342改成f:\dd\so\8.jpg

嗯,大神就是不一样。厉害。搞定了,不过方法有点笨,先取缓存文件夹里的头一个文件名,然后在根据记录文件里的内容找文本,再移动文件。   不会批量,只会一个个改,用时钟组件三秒改一次,就是不知道如果有的文件太大,3秒内没有移动完会不会造成失败。

-------------------------------------
大神可以开发一下这个小工具啊,看到N多人在查百度误删除文件找回了,应该很实用的。期待大神杰作。
作者: 汉族    时间: 2013-8-25 16:20
我才制作了要不要买(10b)
作者: 汉族    时间: 2013-8-25 16:21
我才制作了要不要买(10b)

QQ截图20130825161430.png (116.51 KB, 下载次数: )

没有修改前

没有修改前

傲游截图20130825161948.png (167.16 KB, 下载次数: )

一键修改后

一键修改后

作者: 87299326    时间: 2013-8-25 16:50
提示: 作者被禁止或删除 内容自动屏蔽
作者: 汉族    时间: 2013-8-25 17:21
taobar 发表于 2013-8-24 19:21
之前就是“F:\桌面备份”。

这你有你需要的http://125.confly.eu.org/forum.php?mod= ... p;extra=#pid5556481
作者: 洒脱哥    时间: 2013-8-26 12:47

作者: taobar    时间: 2013-8-27 09:19
pingvvvv 发表于 2013-8-25 16:21
我才制作了要不要买(10b)

精币么,是源码就要了。




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4