1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| #include <stdio.h>
#include <stdlib.h>
#include <string.h>
int i=0;
int main()
{
char cheminAvant[] = "c:/carte corse/corse 25000 IGN 15 (000).map";
int positionPremier = strlen(cheminAvant) - strlen(strchr(cheminAvant, '('));
// resultat 35
int positionDernier = strlen(cheminAvant) - strlen(strrchr(cheminAvant, ')'));
//resultat 38
unsigned short v=strtoul("000", NULL, 10);
for (i=0;i<5;i++) // boucle 5 fois pour test
{
char fin[50] = { 0 };
char cheminApres[50] = { 0 };
strncpy (cheminApres,cheminAvant,positionPremier);
strncpy (fin,cheminAvant+positionDernier,7);
sprintf(fin,"(%03hu).map", v+1);
// fin =(00x).map
v=v+1;
// cheminApres =c:/carte corse/corse 25000 IGN 15
// fin= (001).map
strcat(cheminApres,fin);
// cheminApres =c:/carte corse/corse 25000 IGN 15 (001).map
printf("chemin avant %s",cheminAvant);
printf (" chemin Apres %s\n",cheminApres);
}
} |
Partager