Boucle For pour créer des fichiers

Signaler
Messages postés
61
Date d'inscription
mercredi 25 avril 2007
Statut
Membre
Dernière intervention
27 avril 2009
-
Messages postés
1054
Date d'inscription
samedi 2 octobre 2004
Statut
Membre
Dernière intervention
9 juillet 2013
-
Bonjour, je voudrais faire une boucle pour créer plusieurs fichiers en c++ mais uniquement avec les fonctions Windows. Comment Faire?
(Je ne sais pas comment on peut faire changer le nom d'un fichier en fonction d'une variable i)
Voici mon code:

TCHAR ConnexLogc1[64]= _T("\\code.txt");
TCHAR ConnexLogc2[64]= _T("\\code_OffSet.txt");
TCHAR ConnexLogc3[64]= _T("\\Defauts_def.txt");
TCHAR baseName[63] = _T("\\FLashDisk\\memoire"); //FLashDisk

TCHAR CheminLog1[MAX_PATH];
TCHAR CheminLog2[MAX_PATH];
TCHAR CheminLog3[MAX_PATH];

HANDLE hConnexLog1;
HANDLE hConnexLog2;
HANDLE hConnexLog3;

For(int i=1, i<=3, i++)
{
    wcscpy(CheminLogi, baseName);
    wcscat(CheminLogi, ConnexLogci);
    hConnexLogi = CreateFile(CheminLogi,
                            GENERIC_WRITE|GENERIC_READ,
                            FILE_SHARE_READ,
                            0,
                            CREATE_ALWAYS,
                            FILE_ATTRIBUTE_NORMAL,
                            NULL);

}

5 réponses

Messages postés
1054
Date d'inscription
samedi 2 octobre 2004
Statut
Membre
Dernière intervention
9 juillet 2013
6
Salut, il faut que tu convertisses ton entier i en chaine de caractère.
Utilise la fonction itoa(), puis tu concatènes ta nouvelle chaine à la fin du nom du fichier.
A+
____________________________________________________________________________
Mon site internet :  
http://ImAnalyse.free.fr
Messages postés
61
Date d'inscription
mercredi 25 avril 2007
Statut
Membre
Dernière intervention
27 avril 2009

Pourrais tu me donner la syntaxe stp. Je ne vois pas comment faire.
Messages postés
1054
Date d'inscription
samedi 2 octobre 2004
Statut
Membre
Dernière intervention
9 juillet 2013
6
char Buff[20];
strcpy(CheminLogi, itoa(i,Buff,10));
A+
____________________________________________________________________________
Mon site internet :  
http://ImAnalyse.free.fr
Messages postés
61
Date d'inscription
mercredi 25 avril 2007
Statut
Membre
Dernière intervention
27 avril 2009

Mais CheminLogi je dois le déclarer?
Moi j'ai déclaré:
TCHAR CheminLog2[MAX_PATH];
TCHAR CheminLog4[MAX_PATH];

Normalement CheminLogi sera remplacé par CheminLog2 et CheminLog4 c ca?
Messages postés
1054
Date d'inscription
samedi 2 octobre 2004
Statut
Membre
Dernière intervention
9 juillet 2013
6
Ok j'avais lu ton post un peu trop vite: tu veux que ce soit ton nom de variable qui soit dynamique.
Dans ce cas, oublie mon précédent post. Il va falloir que tu crées une variable à 2 dimensions:
TCHAR ConnexLogc1[3][64];
wcscpy(ConnexLogc, _T("\\code.txt"));
wcscpy(ConnexLogc,_T("\\code_OffSet.txt"));
wcscpy(ConnexLogc, _T("\\Defauts_def.txt"));

et dans ta boucle for tu fais :
ConnexLogc[i]

A+
____________________________________________________________________________
Mon site internet :  
http://ImAnalyse.free.fr