C++批量重命名(pic中的命名后放入pic2)需要修改后再用

#include <stdio.h>
#include<fstream>
#include<iostream>
#include<string>
#include<dirent.h>
#include<sstream>
using namespace std ;
int main(void)
{
	
	int n=0;
	string dirname;
    DIR *dp;
    struct dirent *dirp;
    cout << "Please input a directory: ";
    cin >> dirname;
    if((dp = opendir(dirname.c_str())) == NULL)
    {
        cout << "Can't open " << dirname << endl;
    }
    //在此处设置起点数字n=n+0;
    while((dirp = readdir(dp)) != NULL)
    {
    	char str1[260]=".";
    	char str2[260]="..";
		if( strcmp(dirp->d_name,str1)==0||strcmp(dirp->d_name,str2)==0) continue;
        cout << "转化目标:"<<dirp->d_name << endl;
		ostringstream  oss1 ;
		oss1<<dirname<<"2\\问卷单"<<++n<<".jpg";
		string renam = oss1.str();
		char * str11=new char[strlen(renam.c_str())+1];strcpy(str11,renam.c_str());
		
		ostringstream oss2;
		oss2<<dirname<<"\\"<<dirp->d_name;
		string nam=oss2.str();
		char * str22=new char[strlen(nam.c_str())+1];strcpy(str22,nam.c_str());
		
		if(rename(str22, str11) == 0){}
		else {cout<<"error";break;}
		
		
	}     


}

猜你喜欢

转载自blog.csdn.net/jzlStudent/article/details/104361968
pic