我们经常下载一下美剧,有好多剧集,有很多收藏者收藏时发现文件名中有很多广告宣传信息,我特意写了一个程序,解决这一个问题,程序有以下功能:

1.删除文件中的特定字符

2.插入特定文件字符

3.重命名文件名

4.列出所有文件

注意及使用方法:

1.本程序采用codeblocks GCC编译器编译
2.运行时需将libgcc_s_dw2-1.dll 和 libstdc++-6.dll 放入C:\Windows下
3.将命名神器.exe 放入需处理的文件件内,程序会默认对当前文件夹内的所有文件(不包括子文件夹和子文件内的文件)进行处理
4.按程序提示操作即可

附件地址:http://download.csdn.net/detail/zhuihunmiling/9388595

警告:本计算机程序受著作权法和国际条约保护,如未经授权而擅自复制或传播本程序,,将受到严厉的民事制裁和刑事制裁,并将在法律许可的最大程度内受到起诉。

/**
*追魂密令工作室倾情编制
*zhuihunmiling@sina.com
*/
#include<iostream>
#include <dir.h>
#include<stdlib.h>
#include <windows.h>
#include<string>
#include<stdio.h>
#include<algorithm>
using namespace std;
#define MAXPATH 255
#define MAXSIZE 255
bool compare(string s1,string s2)
{if(s1.size()<s2.size()) return true;else if(s1.size()==s2.size()&&s1<s2) return true;return false;
}
string getfilelist(string path)
{string strs="";long hFile = 0;struct _finddata_t fileInfo;string pathName=path, exdName;if ((hFile = _findfirst(pathName.append("\\*").c_str(), &fileInfo))==-1){return "";}while (_findnext(hFile, &fileInfo) == 0){string filename=fileInfo.name;if(fileInfo.attrib&_A_SUBDIR)continue;if(filename.find(".exe")<255) continue;strs=strs+filename+",";}_findclose(hFile);string sortstr[MAXSIZE];string s_all=strs;int n=0;while((s_all.find_first_of(",")>0&&s_all.find_first_of(",")<s_all.size())){string filename=s_all.substr(0,s_all.find_first_of(","));sortstr[n]=filename;n++;s_all=s_all.substr(s_all.find_first_of(",")+1,s_all.size());}cout<<n<<endl;sort(sortstr,sortstr+n,compare);strs="";for(int i=0;i<n;i++)strs=strs+sortstr[i]+",";return strs;
}void display_file_list(string path)
{string s_all=getfilelist(path);while((s_all.find_first_of(",")>0&&s_all.find_first_of(",")<s_all.size())){string filename=s_all.substr(0,s_all.find_first_of(","));cout<<filename<<endl;s_all=s_all.substr(s_all.find_first_of(",")+1,s_all.size());}
}int deletestr(string path,string s_delete)
{int countn=0;string s_all=getfilelist(path);while(s_all.find_first_of(",")>=0&&s_all.find_first_of(",")<s_all.size()){//==============string filename=s_all.substr(0,s_all.find_first_of(","));if(filename.find(s_delete)>=0&&filename.find(s_delete)<filename.size()){string source=path+"\\"+filename;filename.erase(filename.find(s_delete),s_delete.size());if(rename(source.c_str(),filename.c_str())!=-1){countn++;cout<<"rename file:"<<countn<<endl;}}s_all=s_all.substr(s_all.find_first_of(",")+1,s_all.size());}return countn;
}
int renamefile(string path,string regulation)
{if(regulation.find_first_of("#")<0||regulation.find_first_of("#")>=regulation.size()){cout<<"没有找到#位置!"<<endl;return 0;}display_file_list(path);cout<<"将按此顺序重命名影视?(Y/N)";char c;cin>>c;if(c!='Y'&&c!='y') return 0;int countn=0;int i=1;string s_all=getfilelist(path);while(s_all.find_first_of(",")>=0&&s_all.find_first_of(",")<s_all.size()){string filename=s_all.substr(0,s_all.find_first_of(","));string source=path+"\\"+filename;char c[8];sprintf(c,"%02d",i);string t_regu=regulation;t_regu.replace(t_regu.find_first_of("#"),1,c);if(rename(source.c_str(),t_regu.c_str())!=-1){countn++;i++;cout<<"rename file:"<<countn<<endl;}else cout<<"shibai"<<endl;s_all=s_all.substr(s_all.find_first_of(",")+1,s_all.size());}return countn;
}
int add_str2file(string path,string add_str,char c)
{int countn=0;string s_all=getfilelist(path);while(s_all.find_first_of(",")>=0&&s_all.find_first_of(",")<s_all.size()){//==============string filename=s_all.substr(0,s_all.find_first_of(","));string source=path+"\\"+filename;if(c=='y'||c=='Y') filename.insert(0,add_str);else filename.insert(filename.find_last_of("."),add_str);if(rename(source.c_str(),filename.c_str())!=-1){countn++;cout<<"rename file:"<<countn<<endl;}s_all=s_all.substr(s_all.find_first_of(",")+1,s_all.size());}return countn;
}void display()
{cout<<"==========追魂密令工作室倾情编制=============="<<endl;cout<<"==========zhuihunmiling@sina.com=============="<<endl;cout<<"请选择:"<<endl;cout<<"1:删除文件中的字符"<<endl;cout<<"2:重命名文件"<<endl;cout<<"3:输出当前文件列表"<<endl;cout<<"4:增加自定义字符串"<<endl;cout<<"0:退出"<<endl<<endl;cout<<":";
}
int main()
{char path[MAXPATH];getcwd(path,MAXPATH);display();int myselect=0;cin>>myselect;while(myselect!=0){string s_all="";char c='y';switch(myselect){case 1:cout<<"请输入要删除的字符串_:";getchar();getline(cin,s_all);cout<<"File renamed number:"<<deletestr(path,s_all)<<endl;break;case 2:cout<<"请输入要重命名的规则,用#表示剧集号_:";getchar();getline(cin,s_all);cout<<"File renamed number:"<<renamefile(path,s_all)<<endl;break;case 3:display_file_list(path);break;case 4:cout<<"请输入要增加的字符串_:";getchar();getline(cin,s_all);cout<<"输入Y/y在最前面添加,否则在最后添加_:";cin>>c;cout<<"File renamed number:"<<add_str2file(path,s_all,c)<<endl;break;default:cout<<"请重新选择"<<endl;break;}cout<<endl;display();cin>>myselect;}system("pause");return 0;
}

美剧,电影等命名问题程序相关推荐

  1. 人人影视 for Mac(美剧电影必备神器)

    人人影视 Mac客户端是Mac平台上一款观看美剧电影必备的神器!人人影视 for Mac网络全网海量电影,电视,动漫,综艺等影视资源,无需会员即可观看!想要看各种美剧,日剧等海外影视资源,人人影视 M ...

  2. 好莱坞美剧电影英雄主义价值观的问题

    好莱坞美剧电影英雄主义价值观的问题 英雄主义的荒谬之处在于,普通人通过某种机缘,居然拯救了地球.或者至少拯救了美国. 或者,至少他有能力保护自己的家庭,也就是老婆孩子. 前者让人妄自尊大,后者则使人目 ...

  3. 据说美剧《硅谷》是程序员成功人士的必看剧?

    阅读原文请点击 Silicon Valley,中文名<硅谷>(也译作<硅谷黑历史>),是HBO电视网出品的喜剧,目前出了3季共28集(8+10+10). <硅谷>的 ...

  4. 拯救剧荒,程序员最爱看的高分美剧TOP10

    我们大程序员要有一个帖子!!! 在软件行业,有一句大家都熟悉的话:女人当男人用,男人当牲口用.只有做过程序员的人才知道这句话里包含多少辛酸,因为工作,程序员往往要割舍掉很大一部分自己的生活.但是如果你 ...

  5. 最新迪恩电影/美剧DiscuzV3.2商业版模板源码

    正文: 最新迪恩电影/美剧DiscuzV3.2商业版模板源码,其他的就没什么可介绍的了,唯一要说的就是,演示图是整站长截图,本文只放了一部分,完整的演示图放到压缩包了,有兴趣的自己去看吧. 程序: w ...

  6. 拯救剧荒!程序员最爱看的美剧TOP5!

    专栏 | 九章算法 网址 | http://www.jiuzhang.com 如果你对没日没夜编写代码的生活感到厌倦,想追剧来放松一下却又发现韩剧日剧不对你的胃口,那么这篇文章就是为你而准备的,接下来 ...

  7. 拯救剧荒!程序员最爱的美剧TOP5!

    专栏 | 九章算法 网址 | www.jiuzhang.com 周末了,终于可以不用没日没夜编写代码,来追个剧来放松一下了.这里分享一些围绕编程或黑客题材的经典美剧! 1. 黑客军团 Mr. Robo ...

  8. 请把ios文件解压出来是什么意思_全网电影+美剧+日韩剧(ios+安卓)

    点击蓝字关注我们 应用and游戏管家介绍: [应用and游戏管家]是一个以分享好用的软件,好玩的游戏,并提供下载地址,安装教程的一个良心好公众号.一直以来我们为网友最想要的最实用的软件,提供最好玩的游 ...

  9. 美剧自动更新下载程序(需要迅雷vip会员的离线下载功能)

    好久没上,人都变的懒了...要逐渐把Blog捡起来了!最近接触到.Net,学习之余写一个自己一直想写的小工具,一是练练手,二是希望能方便更多的人,也希望能跟大家多交流,交流. 软件的功能是自动从网站上 ...

最新文章

  1. java中包的_Java中的包
  2. Selenium3自动化测试——15.调用Javascript进行滚动条控制
  3. 【KVM】Ubuntu14.04 安装KVM
  4. jQuery EasyUI动态添加控件或者ajax加载页面后不能自动渲染问题的解决方法
  5. 当前操作系统缺少黑体等字体_操作系统开发之——中断
  6. 支付宝异步回调返回success_深入解决异步编程Promise对象的学习
  7. MySQL亿级数据数据库优化方案测试-银行交易流水记录的查询
  8. Mac上安装fastboot等工具与烧写images
  9. MySQL 第一次练习(安装MySQL)
  10. [JNI]开发之旅(5)访问c/c++函数
  11. 单摄像机对于二维平面的测量
  12. 金盾视频加密器V2014视频加密原理分析
  13. 关于通过图注意神经网络处理多元时间序列的错误预测论文的讨论
  14. Linux(CentOS)搭建redmine项目管理系统
  15. 深度学习:常见深度学习框架【Theano、TensorFlow、Keras、Caffe/Caffe2、MXNet、CNTK、PyTorch】
  16. Win10下不能识别Android的MTP模式
  17. 苹果高通 5G 开战!
  18. JS实现一键展开、折叠所有树节点
  19. 西工大研究生计算机应用技术学什么,2022考研:西北工业大学计算机应用技术专业考研经验备考复习指导...
  20. 40多个优秀的Adobe Illustrator卡通教程

热门文章

  1. Aseprite常用快捷键大全
  2. GHOST使用教程图解
  3. c++工作宝贵经验呀,我去。。。。
  4. web前端开发技术实验与实践(第三版)储久良编著 项目12 设计简易网站导航
  5. C++程序员发展方向
  6. 如何使用ping命令检查网络情况
  7. 脚本引擎《游戏脚本的设计与开发》-序
  8. 【每周CV论文推荐】StyleGAN人脸属性编辑有哪些经典论文需要阅读
  9. SQL 之 模糊匹配
  10. 如何获得最新的太阳神三国杀 自己Qt编译