#include <iostream>
#include <windows.h>
#include <stdio.h>
using namespace std;
#include <string>
#define MAX_PATH 999999
string change(int num)
{
string ans = "";
int n = num;
while (n)
{
ans += n % 10 + '0';
n /= 10;
}
reverse(ans.begin(),ans.end());
if (num < 10)
ans= "00000" + ans;
else if (num < 100)
ans = "0000" + ans;
else if (num < 1000)
ans = "000" + ans;
else if (num < 10000)
ans = "00" + ans;
else if (num < 100000)
ans = "0" + ans;
else if (num < 1000000)
ans = "" + ans;
return ans;
}
int find_all_files(const char * lpPath)
{
WIN32_FIND_DATA FindFileData;
string szFind = "G:\\Data\\1000\\*.*";
cout << szFind << endl;
HANDLE hFind = FindFirstFile(szFind.c_str(), &FindFileData);
if (INVALID_HANDLE_VALUE == hFind)
return -1;
int num = 1;
do
{
if (FindFileData.cFileName == "." || FindFileData.cFileName == "..")
continue;
cout << FindFileData.cFileName << endl;
string oldName = string(lpPath)+"\\"+ FindFileData.cFileName;
string newName = string(lpPath)+"\\" + "2018_" + change(num++) + ".jpg";
if (rename(oldName.c_str(), newName.c_str()) == 0)
cout << oldName + "->" + newName + "\n";
else
perror("rename");
} while (FindNextFile(hFind, &FindFileData));
FindClose(hFind);
cout << "处理完成" << endl;
return 0;
}
int main()
{
cout << "Hello world!" << endl;
char *lpPath = "G:\\Data\\1000";
find_all_files(lpPath);
system("pause");
return 0;
}