竟然还有比TC更强大的重命名软件?还真有,它叫DO。

您所在的位置:网站首页 手机外接键鼠吃鸡 竟然还有比TC更强大的重命名软件?还真有,它叫DO。

竟然还有比TC更强大的重命名软件?还真有,它叫DO。

2024-07-14 20:43| 来源: 网络整理| 查看: 265

标题中,TC是非常老牌的文件管理软件 Total Commander 的简称,我用它超过十来年了。它的更新实在缓慢,所以使用WIN10之后,安装使用它的次数屈指可数,相反找了很多同类软件尝试。今天找到的《Direct Opus》(简称就是DO)真是堪能与之一战的利器,而且在某些方面真的还胜过,比如重命名。

TC的重命名,功能当然不可谓不强大,花式的绝活让俺用得得心应手。但是美中不足的地方也存在,比如:文件的前两位数字,后面是文字,现在的需求是想在数字和文字之间加一个空格分隔开。TC直接做是不行的,只能先把这些文件名导出到TXT纯文本格式,然后再导入到EXCEL,用公式加空格后,再倒回到TXT,另存为纯文本之后由TC倒入,可见有多麻烦。

但是这个在DO中就完全不是一回事!虽然DO也没有直接做的方式,但是人家支持VB啊!而VB语言的门槛 -- 呵呵,借用张爱玲的名言 -- 那简直就是低到了尘埃里。我只是在它的官网看了一下Example Rename Script  页面,再试着加上 Left 和 Mid 函数 ~~ 嘿,这事就成了!So Easy ~~

Option Explicit Function OnGetNewName ( ByRef GetNewNameData ) Dim item Set item = GetNewNameData.item OnGetNewName = Left(item,2) & " " & Mid(item,3) End Function

咦??? 且慢高兴,不就是从短文件名变成了长文件名吗,空格似乎还是没发现啊。

短名更长名

那就换个间隔符,这回变成横线:

OnGetNewName = Left(item,2) & "---" & Mid(item,3)

则点击 “ 刷新预览 ” 按钮,它将成为:

添加横杠后

横杠出现在了盘符之后,说明那个item是带路径的长文件名。那就用Len函数验证一下:

OnGetNewName = Len(item)

果然如此,该文件名带全路径的总长度为48.

带全路径的文件名长度

到此心里完全有数了,拼接字符串那是任何一门编程语言的基本功啊,小菜一碟:

nLast = InstrRev(item,"\") OnGetNewName = Mid(item,1,nLast+2) & Space(1) & Mid(item,nLast+3)

中间加空格,拼接成功!

在多次Debug中,发现预览不出内容,但是代码没错。此时请把开头的

Option Explicit去掉即可。即便如此,点解下方的确定,一桶冰水浇下来:

一桶冰水浇下来

那就再优化一下,变成:

nLast = InstrRev(item,"\") OnGetNewName = Mid(item,1,nLast+2) & Space(1) & Mid(item,nLast+3)执行,想要的出来了!

带全路径、加空格的也成功了!

可一执行,还是报错!

正当百思不得其解之际,偶然看见那个移动硬盘:G盘根本已经都没有挂在电脑上了。这要是发生在TC上,那么盘符会自动从驱动器列表中消失,而且当前窗口和文件列表都会自动弹到别的驱动器下,比如C盘根目录。而这个DO却没有此即时变化的能力。甚至,因为俺刚接触DO的缘故,翻遍了菜单、图标和帮助文件,也不晓得它是怎么刷新的。所以,得自己小心。但,不管怎样,还是搞定了。

为了一劳永逸,再把它保存起来:



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3