批量更改文件名的求救

老农民77 2008-05-08 01:59:40
有个配置文件,例如test.ini,里面有如下信息:
*****test.ini****
2006510101023.dat,2006510101023.doc
200651010206.dat,200651010206.pdf
2006510102112.dat,2006510102112.rar
2006510102151.dat,2006510102151.doc
200651011822.dat,200651011822.xls
200651011823.dat,200651011823.doc
2006510118255.dat,2006510118255.ppt
.......
*****end**********
该文件假设在file目录下,且file目录下有很多文件名为*.dat的文件,现在要求能够实现调用test.ini文件进行查找比对,发现有文件名相同的,就将文件更名为“,”右边的文件名,例如查找到“2006510101023.dat”更名为“2006510101023.doc”,依次查找比对,直到test.ini文件查找完毕为止,请前辈给出完整的C写法,在下不甚感激,谢谢!
...全文
60 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
c_spark 2008-05-08
  • 打赏
  • 举报
回复
解决了不是吗,这帖就不用留着了吧,呵呵...
老农民77 2008-05-08
  • 打赏
  • 举报
回复
kakaying兄,中午迟等没消息,我急了就在这发了,谢谢,抱歉!
jy01807853兄没关系,感谢大家!
jy01807853 2008-05-08
  • 打赏
  • 举报
回复
没看清楚问题
kakaying 2008-05-08
  • 打赏
  • 举报
回复
这怎么还有一贴?
jy01807853 2008-05-08
  • 打赏
  • 举报
回复
惭愧!!!
老农民77 2008-05-08
  • 打赏
  • 举报
回复
jy01807853兄可能理解错了兄弟的需求了,呵呵,谢谢!
jy01807853 2008-05-08
  • 打赏
  • 举报
回复

#include<vector>
#include<iostream>
#include<fstream>
#include<string>
#include<algorithm>
using namespace std;
int main()
{
string str;
vector<string> vec,svec;;
ifstream ifile("file.txt",ios::in | ios::binary);//打开你的第一个样本文件
if(!ifile)
{
cout<<"cannot open file! "<<endl;
return 1;
}
while(getline(ifile,str))
vec.push_back(str);
ifile.close();
cin.clear();
ifstream ifile1("file1.txt",ios::in | ios::binary);//打开你的第2个要改的文件
if(!ifile1)
{
cout<<"cannot open file! "<<endl;
return 1;
}
while(getline(ifile1,str))
svec.push_back(str);
ifile1.close();
vector<string>::iterator beg=vec.begin();
vector<string>::iterator beg1=svec.begin();
beg=find(vec.begin(),vec.end(),str);
if(beg!=vec.end())
{
while(beg!=vec.end())
*beg1++=*beg++;
}
for(vector<string>::iterator ix=vec.begin();ix!=vec.end();++ix)
cout<<*ix<<endl;//输出交换了的结果
system("pause");
}
老农民77 2008-05-08
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 clhposs 的回复:]
首先 把他读到 map容器中去
然后遍历该目录文件 找到该文件就利用system("move file_name1 file_name2");
[/Quote]
我想求的是完整的写法,急用,谢谢了
clhposs 2008-05-08
  • 打赏
  • 举报
回复
首先 把他读到 map容器中去
然后遍历该目录文件 找到该文件就利用system("move file_name1 file_name2");

64,646

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧