#include <windows.h>
#include <iostream>
#include <vector>
#include <string>
#include <fstream>
using namespace std;
int main(int argc, char *argv[])
{
WIN32_FIND_DATA fdFileData;
HANDLE hFind;
vector< string > vecFileNames;
string strPath( "D:\\");
hFind = FindFirstFile( (strPath + "*.txt").c_str(), &fdFileData);
if( hFind == INVALID_HANDLE_VALUE) {
cout << "ERROR: Invalid File Handle [ERROR: " << GetLastError() << "]" << endl;
return( 0);
}
else {
do {
if( fdFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
continue;
vecFileNames.push_back( fdFileData.cFileName);
}while(FindNextFile(hFind, &fdFileData));
FindClose(hFind);
fstream fsFile;
string strDummy;
char cDummy, szNewFileName[20];
int iArtikelNum, iDay, iMonth, iYear;
for( vector< string >::iterator itElement = vecFileNames.begin(); itElement < vecFileNames.end(); itElement++) {
//string debug_1 = (strPath + (*itElement));
fsFile.open( (strPath + (*itElement)).c_str(), ios::in);
fsFile >> strDummy;
fsFile >> strDummy;
fsFile >> strDummy;
fsFile >> strDummy;
fsFile >> iArtikelNum;
fsFile >> strDummy;
fsFile >> strDummy;
fsFile >> iDay;
fsFile.read( &cDummy, 1);
fsFile >> iMonth;
fsFile.read( &cDummy, 1);
fsFile >> iYear;
fsFile.close();
sprintf( szNewFileName, "%s%02d%02d_%d.txt", strPath.c_str(), iYear, iMonth, iArtikelNum);
MoveFileEx( (strPath + (*itElement)).c_str(), szNewFileName, MOVEFILE_REPLACE_EXISTING);
}
return (1);
}
}