009
14.11.2006, 15:32 Uhr
thorgo
|
O.K. Hab's gelöst , für alle die ein ähnliches Problem haben habe ich hier die Testsyntax:
C++: |
#include <conio.h> #include <stdio.h> #include <iostream> #include <fstream> #include <string> #include <windows.h> #include <ctime> using namespace std;
int main() { int Durchlauf = 0; string Vergleich; string Vergleich2; string Vergleich3 = "_L"; string pfad1; string pfad2; string pfad3; string temp; string temp2; string temp3; string textemp; string textemp2; HANDLE fHandle; HANDLE zHandle; HANDLE tHandle; ofstream logdat; time_t datum; struct tm *tmzgr; char Datum[30];
datum = time(NULL); tmzgr = localtime(&datum); strftime(Datum,30,"%d""%m""%Y",tmzgr); WIN32_FIND_DATA ver1; WIN32_FIND_DATA ver2; WIN32_FIND_DATA ver3; fHandle=FindFirstFile("c:\\Test\\ACH\\*.pdf",&ver1); do { pfad1 = "c:\\Test\\ACH\\"; pfad2 = "c:\\Test\\ACH08112006\\"; pfad3 = "c:\\Test\\"; Vergleich = ver1.cFileName; Vergleich2 = "c:\\Test\\ACH08112006\\"; Vergleich2 = Vergleich2+Vergleich; zHandle=FindFirstFile(Vergleich2.c_str(),&ver2); Vergleich2 = ver2.cFileName; if (Vergleich != Vergleich2) { temp = pfad1; temp = temp+Vergleich; temp2 = pfad2; temp2 = temp2 + Vergleich; temp3 = pfad3 + "ACH" + (string) Datum; bool bResult = ::CreateDirectory(temp3.c_str(),NULL); CopyFile(temp.c_str(), temp2.c_str(), TRUE); temp2 = temp3 + "\\"; temp2 = temp2 + Vergleich; CopyFile(temp.c_str(), temp2.c_str(), TRUE); temp = temp3 + "\\scheine.txt"; } else { cout << Vergleich << endl << Vergleich2 << endl << Datum <<endl; } } while (FindNextFile(fHandle,&ver1)); FindClose(fHandle); if (temp3 == pfad3 + "ACH" + (string) Datum) { logdat.open(temp.c_str(), ios_base::out); temp2 = temp3 + "\\*.pdf"; tHandle=FindFirstFile(temp2.c_str(),&ver3); do { textemp = ver3.cFileName; logdat << textemp << endl; textemp2 = textemp.substr(10, 2); if (textemp2 != Vergleich3) { ++Durchlauf; } } while (FindNextFile(tHandle,&ver3)); FindClose(tHandle); logdat << endl << "Anzahl der Scheine:" << Durchlauf << endl; logdat.close(); } system ("pause"); return 0; }
|
|