yidabu 2007-5-2 15:13
D语言批量重命名文件实例
D语言批量重命名文件实例知识若不分享 实在没有意义 http://www.d-programming-language-china.org 20070502点击下面网址查看原文:http://www.d-programming-language-china.orgtag:d language教程,d language入门,D language实例 用D语言重命名文件是非常方便的。 对比了一下,代码量比用脚本语言autoit少了许多。 原来 yidabuTxt 文本格式用的是au3后缀,关于 yidabuTxt 文本格式的了解,可见这里: http://bbs.d-programming-language-china.org/thread-83-1.html 今天想把全部后缀改成ydb,原来已经有数百篇文章了,全部手工去改文章后缀岂不累死,就用D语言来试试。 先备份所有文档,然后执行下面的代码: [Copy to clipboard] [ - ]CODE: import std.file; //for listdir rename import std.path; //for getExt addExt //bbs.d-programming-language-china.org 注: 只导入std.stdio里的writefln,否则有同名函数的冲突 import std.stdio:writefln; void main(char[][] args) { bool callback(DirEntry* de) { char[] fromName,toName; if (de.isdir) //如果是目录就迭代 listdir(de.name, &callback); else //如果是文件,就判断文件后缀 if (getExt(de.name) == "au3") { fromName = de.name; toName = addExt(de.name,"ydb"); //重命名文件 rename(fromName,toName); writefln(toName); } return true; } auto dir = r"D:\bbs.d-programming-language-china.org\"; listdir(dir, &callback); } 按Ctrl+F7编译,按F5运行,几百篇文章的后缀一下子就改好了。已经修改的文章全部打印在Scite文本编辑器输出区,用静态语言来做小事情和动态语言一样方便,而且代码量可能更少。( lastupdate:20070502 最新文章请访问http://www.d-programming-language-china.org )关于一大步成功社区:yidabu提倡在交流中学习,在分享中提高收集感兴趣的知识,写下心得,通过网络与别人一起分享理解一点就实践一步,收获什么就分享什么,成功就是这样一点点一步步累积起来的网络只是一个工具,只有自己身心提高才是实实在在的。d-programming-language-china.org为大家提供一个学习交流各种知识的平台