今天在网上下载了几张音乐专辑,结果文件名全都是繁体中文,看起来十分不爽。Google了一下,貌似没有什么特别好的文件名繁简转换工具,于是就生出想法用PHP搞定。
不过由于PHP水平还不够到家,所以真正的繁简转化步骤我还是用word完成的。PHP在这里主要是把文件列表保存成一个文件并且对文件进行批量重命名。
PHP方面的代码其实很简单,就是先把文件保存成一个列表,然后再把文件先批量重命名成一个临时文件名。等用Word繁简转换完成以后再批量重命名成最终的文件名。
不过列表的时候有一点需要注意:readdir这个命令并不是把文件列表先缓冲再进行输出,而是直接输出。也就是说当你重命名完一个文件后这个文件会被当成一个新的文件再次进行输出。所以要先生成文件列表,然后再进行重命名工作。
我使用的源代码已经注释好上传上来了,其实很简单,没啥技术含量的。
代码的使用方法:把解压出来的文件和要批量重命名的文件放在一起,先运行list.php生成文件列表list.txt,然后用Word对其进行繁简转换,再运行conv.php进行批量转换。

2010-02-04 12:43