讀取,修改某個文件夾下的所有文件名

#include<io.h>

#include<stdio.h>

#include<vector>

using namespace std;


void changeName(string path,  string append)//path 文件夾絕對路徑,append要添加的文字

{

long hFile = 0;

struct _finddata_t fileinfo;

string p;

if((hFile = _findfirst(p.assign(path).append("\\*").c_str(), &fileinfo)) != -1)

{

do

{

if((fileinfo.attrib & _A_SUBDIR))

{

if(strcmp(fileinfo.name, ".") != 0 && strcmp(fileinfo.name, "..") != 0)

{

changeName(p.assign(path).append("\\").append(fileinfo.name), append);

}

else

{

string str = fileinfo.name;

int x = str.find_last_of(".");

string str1 = str.substr(0,x);

string str2 = str.substr(x);

str = str1 + append + str2;

str1 = p.assign(path).append("\\").append(fileinfo.name);

str2 = p.assign(path).append("\\").append(str1.c_str());

rename(str1.c_str(), str.c_str());

}

}while(_findnext(hFile, &fileinfo) == 0)

_findclose(hFile);

}

}

}

發佈了25 篇原創文章 · 獲贊 1 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章