精华内容
下载资源
问答
  • 批量 重命名 文件 批量 重命名 文件 批量 重命名 文件 批量 重命名 文件 批量 重命名 文件 批量 重命名 文件 批量 重命名 文件 批量 重命名 文件
  • 批量重命名文件

    2017-09-07 14:46:37
    批量重命名文件2017-09-07 电影,音乐批量修正,修正是对的 批量重命名文件2017-09-07 电影,音乐批量修正,修正是对的
  • 本文实例讲述了PHP实现读取文件夹及批量重命名文件操作。分享给大家供大家参考,具体如下:以读取从网上下载的评书解压后的文件夹为例,并批量重命名文件夹内容如下,现在使用php读取这个文件夹里面的文件,并批量...

    本文实例讲述了PHP实现读取文件夹及批量重命名文件操作。分享给大家供大家参考,具体如下:

    以读取从网上下载的评书解压后的文件夹为例,并批量重命名

    文件夹内容如下,现在使用php读取这个文件夹里面的文件,并批量重命名为"隋唐演义+序号.mp3"的格式:

    48ecc0e8d099348b2cab28a918d99627.png

    $dir1 = './dir1/';//读取文件夹名称 (重命名为dir1避免中文报错,移动到与要执行的php文件同级目录)

    $filearr = scandir($dir1);//读取文件夹

    print_r($filearr);

    读取文件夹内容如下:

    84c9082817eb22edcdf849acee9e32f1.png

    进一步操作,对获得的文件数组做一些处理:

    $dir1 = './dir1/';//读取文件夹名称(避免使用中文)

    $filearr = scandir($dir1);//读取文件夹

    unset($filearr[0]);//去除多余的元素

    unset($filearr[1]);

    $filearr = array_values($filearr);//使数组从0开始,以1递增

    print_r($filearr);

    此时文件数组的格式就正常了:

    f7bd561b9427fdd43db4c13fc5da5442.png

    现在对文件数组循环,重命名文件,并移动到文件夹dir2(移动文件是rename()函数造成的):

    $dir1 = './dir1/';//读取文件夹名称(避免使用中文)

    $dir2 = './dir2/';//移动到文件夹名称(避免使用中文)

    $filearr = scandir($dir1);//读取文件夹

    unset($filearr[0]);//去除多余的元素

    unset($filearr[1]);

    $filearr = array_values($filearr);//使数组从0开始,以1递增

    $filecount = count($filearr);//文件数量

    $onenum = 1;//起始编号

    $maxnum = $onenum + $filecount;//最大循环次数

    $title = 'styy';//文件标题

    $houzhui = '.mp3';//文件后缀

    for ($i = $onenum; $i <= $maxnum; $i++) {

    for ($j=0; $j < $filecount ; $j++) {

    if($i<10){

    $i = '0'.$i;

    }

    rename($dir1.$filearr[$j],$dir2.$title.$i.$houzhui);

    $i++;

    }

    }

    操作结果如下,批量重命名成功,dir2文件夹内容:

    b3add814dc1abd25cdeb6e5cdf5c23bc.png

    如果使用中文名对文件重命名,会出现乱码的现象,原因是字符集编码设置的问题,解决方法如下:(但遇到某些中文字符仍旧是乱码)

    $dir1 = './dir1/';//读取文件夹名称

    $dir2 = './dir2/';//移动到文件夹名称

    $filearr = scandir($dir1);//读取文件夹

    unset($filearr[0]);//去除多余的元素

    unset($filearr[1]);

    $filearr = array_values($filearr);//使数组从0开始,以1递增

    $filecount = count($filearr);//文件数量

    $onenum = 1;//起始编号

    $maxnum = $onenum + $filecount;//最大循环次数

    $title = '隋唐演义';//文件标题

    $houzhui = '.mp3';//文件后缀

    for ($i = $onenum; $i <= $maxnum; $i++) {

    for ($j=0; $j < $filecount ; $j++) {

    if($i<10){

    $i = '0'.$i;

    }

    $filename = $title.$i.$houzhui;

    rename($dir1.$filearr[$j],$dir2.iconv("utf-8","gb2312",$filename));//设置字符集

    $i++;

    }

    }

    运行后dir2文件夹内容如下:

    4b105888171cc0f83c6f26c53ddc1b73.png

    到此完成php对文件夹中文件的读取、批量重命名操作。另外可以构思一个简单的页面自定义操作(如下图,代码省略)

    2deea120551478920ac52f981eff2c5e.png

    更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP目录操作技巧汇总》、《php文件操作总结》、《PHP常用遍历算法与技巧总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》及《php常见数据库操作技巧汇总》

    希望本文所述对大家PHP程序设计有所帮助。

    本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

    本文系统来源:php中文网

    展开全文
  • 手工或点"选择" 分别输入要进行批量重命名文件的文件夹,以及存放位置2.选择命名规则: 选择 数字或随机或时间 中的其中一种3.设置参数:举例:若前缀名:a 中缀名:b 后缀名:.jpg 起始数字:1 增量:2,则经过执行后,...
  • 大家好,我是杨数Tos,这是《从零基础到大神》系列课程的第46篇文章,第二阶段的课程:Python基础知识:小案例之用Python批量重命名文件。学习本课程,建议先看一遍:【计算机基础知识】课程。一、小需求:批量...

    大家好,我是杨数Tos,这是《从零基础到大神》系列课程的第46篇文章,第二阶段的课程:Python基础知识:小案例之用Python批量重命名文件。

    学习本课程,建议先看一遍:【计算机基础知识】课程。

    056b7f96d45beb2e3798ce47fb7160be.png

    、小需求:批量重命名文件名

    原因:作为一名优秀的学生,我们会经常需要下载各种学习视频,但下到的SP的文件名总会被添加了各种后缀;我们需要将视频的文件名进行重命名,但需要重命名的文件实在太多了,如果手动修改,太浪费时间了,所以,现在到了学以致用time。

    如图所示:

    bfe58bf501195bbabdbb05938bbed082.png

    需求如下:

    原来的文件名:

    12.Lesson12 Goodbye and good luck(Av69685772,P12).mp4;

    变更后的文件名:

    12.Lesson12 Goodbye and good luck.mp4

    我们需要将文件名中多余的后缀去除!

    修改后的结果如图所示:

    8d9aa86688ffea57b3bf473a405935fb.png

    二、执行过程

    我们需要养成一种习惯,不管写任何比较复杂的代码都需要进行分析,将我们需要实现的目标进行详细分析,细化执行过程;

    然后,将我们执行的执行过程写下来;

    程序的作用就是将我们思考的逻辑,用代码的方式进行体现;

    执行过程:

    1、获取目标文件夹下的所有文件名对

    2、使用循环获取到每个要修改的文件名的绝对路径

    3、定义重命名新文件的规则;

    4、生成每个要修改新的文件名的绝对路径;

    5、如果怕修改文件的过程中出现错误,可以使用异常处理语句try,进行处理。

    最后:做一些简单的修饰,能够显示文件名修改的进度。

    附代码图:

    ad71e30b2dfa271c93be82b9d2250375.png

    实质上,去掉所有一些不是必要的代码,总共只用一8行代码,就实现了批量重命名文件名,从代码的简洁度上看,Python还是蛮方便的。

    附代码:(修改路径重命名规则,复制即可用)

    import osfile_list = os.listdir(r"D:\2英语\裕兴新概念英语第二册 清爽整合版")for i in file_list:    old_path = os.path.join(path,i)    new_name = i.split("(Av69685772")    new_name = new_name[0] + str(".mp4")    new_path = os.path.join(path,new_name)    os.rename(old_path,new_path)

    这里用到的都是我们前面文章中学到的知识点与Python的内置库的结合使用;虽然功能单一且有着许多限制;但是,我们以后学到了面向对象编程、网络编程、并发等相关知识的时候,就可以设计出更强大的功能;

    最后:

    现在是第46篇文章了,做为一名小白,我们从最开始时,对计算机的一无所知,到现在的入门;对于我们而言,最大的收获并不是我们学会了多少知识,而是我们对计算机的理解完全不一样了;

    是的,和普通人相比,我们的世界不一样了。

    虽然现在还只是一名比小白稍入门一点的“菜鸟”(离大神还远着),但是我们至少可以写一些简单的程序了;

    所以,请继续保持下去吧!

    7d5f9c87b01a29fb7d7c3d5f2ebe0724.png

    以上是本期内容,如果有表达不对的内容,欢迎您的留言、斧正,我们一起天天向上。

    感谢您的阅读,您的关注点赞就是对我最大的支持,谢谢!

    本文由杨数Tos原创,欢迎关注,带你一起长知识。

    展开全文

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,093
精华内容 1,637
关键字:

批量重命名文件