bonjour à tous , je débute en c et j'aurais besoin d'un petit coup de main !
j'aimerais parcourir un répertoire et renommer tous les fichiers présents (jpg) avec un format comme suit : 001.jpg 002.jpg 003.jpg et ainsi de suite
donc sur trois chiffres.
pour le moment j'arrive bien a parcourir le répertoire et a afficher les fichiers qu'il contient.
j'ai aussi mis un compteur pour pouvoir renommer chaque fichier comme suit: (du moins c'est ce que je voudrais faire)
de 1 à 9 : 00 + compteur.jpg
de 10 à 99 : 0 + compteur.jpg
plus de 99 : compteur (ça ne dépassera pas les centaines).
voila ou j'en suis pour le moment, ce que j'ai fait fonctionne MAIS !
j'ai un problème dans la boucle de lecture du répertoire
ou a la place des printf je voudrais faire un rename comme décrit ci dessus.
(j'ai mis des printf avec compteur et nom du fichier parcouru pour voir si ça marche)
Merci de votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49 #include <sys/types.h> #include <dirent.h> #include <string.h> #include <stdio.h> #include "fonctions.h" void renamefic() { char chemin[100]; int i = 0; printf("\n [ RENOMMER DES FICHIERS ]\n\n"); printf(" Entrez le chemin : "); scanf("%s", chemin); struct dirent *lecture; DIR *rep; rep = opendir(chemin); while ((lecture = readdir(rep))) { if (strcmp(lecture->d_name, ".") != 0 && strcmp(lecture->d_name, "..") != 0) { i++; if (i<10) { printf("00%d - ",i); printf("%s\n", lecture->d_name); } else if (i>9 && i<100) { printf("0%d - ",i); printf("%s\n", lecture->d_name); } else if (i>100) { printf("%d - ",i); printf("%s\n", lecture->d_name); } } } closedir(rep); printf("\n"); system("pause"); main(); }
Partager