Zum Inhalt springen

Verzeichnissbaum durch Rekursion


Empfohlene Beiträge

Geschrieben (bearbeitet)

Hallo,

ich bin ein anfänger und programmiere hauptsächlich c#. Programmiere zurzeit an einer Syntax die im dos fenster unterverzeichnisse von C:\ (ich nehme immer diesen Pfad) ausgibt undzwar durch eine Rekursion. Dabei verwende ich noch Win23_Find_data structer.

Der Code:

#include "stdafx.h"

#include "windows.h"


		// Variable Structer

		WIN32_FIND_DATA FindFileData;

		//Funktion Handle

		HANDLE hFind;

		char path2[300];


//path=übrgebenes Argument (der pfad...in diesem Fall immer C:\ )


//WDH=Wiederholung

void WDH(char* path)

{	

	strcpy(path2,path);

	strcat(path2,"*.*");


	FILE_ATTRIBUTE_ARCHIVE;


	//Berechnungsvariablen für die Bytegröße der gefundenen Dateien

	double Sizeof;

	double Sizeof2;


	//FindFirstFile names hFind auf FindFileData

    hFind = FindFirstFile(_T(path2), &FindFileData);


	//Wenn nichts gefunden, error

	 if (hFind == INVALID_HANDLE_VALUE)

		 {

			printf ("Invalid File Handle. Get Last Error reports %d\n", GetLastError ());

		 }


		//Ansonsten Berechnen der Größe, Ausprinten der Datei

	 else

		 {

			// Falls eine erste Datei gefunden wurde, wird nach FindNextFile gesucht

			while(FindNextFile(hFind,&FindFileData)) 

			 { 

				 if (FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) 

				{ 

					printf("  %s \t\t\t \n\n",FindFileData.cFileName);

				} 

			 }

		  }	


	 strcat (path2,"\\");

	WDH(path2);

}

int _tmain(int argc, _TCHAR* argv[])

{	

	WDH (argv[1]);

	return 0;

}

Meine Idee ist, dass durch den Wiederaufruf der Funktion sich die Variable path2 immer in C:\*.*\.......usw. ändert und er immer weiter in den Unterverzeichnissen mit FindNextFile sucht.

Bestimmt sind auch große Fehler drin, aber ich hoffe ihr seid nicht zu streng^^

Würde gerne wissen wie man diese Idee vervollständigen kann.

thx

Bearbeitet von x-low

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...