[c] comment changer les nons de plusieur.....

comment changer les nons de plusieur..... [c] - C++ - Programmation

Marsh Posté le 12-05-2002 à 21:13:27    

je voudrai changer les noms de plusieurs fichier en meme temps sans devoir faire renomer a chaque fois
ex g plsieur fichier ds un meme dossier
out1.avi
out2.avi
....
 
je voudrai ki me renome ca en  
tot1.avi
tot2.avi  
.....
 
commen faire cela avec un prog en c  
 
 :(

 

[jfdsdjhfuetppo]--Message édité par neogally le 12-05-2002 à 21:16:32--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 12-05-2002 à 21:13:27   

Reply

Marsh Posté le 12-05-2002 à 21:24:57    

??  :(  personne ce soir ??

Reply

Marsh Posté le 12-05-2002 à 21:56:51    

Essaie comme ça. Attention, je n'ai pas du tout testé ce code, et il se peut même qu'il contienne des erreurs (je tremble pour _itoa), ça fait très longtemps que je n'ai pas fait de C Ansi. Mais le principe est la. C'est bourrin, mais bon...
 
#include <windows.h>
 
void main(void) {
  int n=1;
  char source[8]="out1.avi";
  char dest[8]="tot1.avi";
  char *conv;
  SetCurrentDirectory("C:\Video" );
  while (MoveFile ((LPCTSTR)source, (LPCTSTR)dest)) {
      n++;
      _itoa(n, conv, 10);
      source[3]=*conv;
      dest[3]=*conv;
  }
}

 

[jfdsdjhfuetppo]--Message édité par Harkonnen le 12-05-2002 à 21:57:41--[/jfdsdjhfuetppo]


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 12-05-2002 à 22:02:32    

il me sort ca com erreur  :(  
 
--------------------Configuration: Cpp1 - Win32 Debug--------------------
Compiling...
Cpp1.cpp
F:\change\Cpp1.cpp(7) : error C2117: 'out1.avi' : array bounds overflow
F:\change\Cpp1.cpp(8) : error C2117: 'tot1.avi' : array bounds overflow
Error executing cl.exe.
 
Cpp1.obj - 2 error(s), 0 warning(s)

Reply

Marsh Posté le 12-05-2002 à 22:03:24    

est-i possible sinon de le faire avec un .bat ( si cela est plus facile )

Reply

Marsh Posté le 12-05-2002 à 22:05:30    

oups, j'avais oublié le caractère de fin de chaine....
 
remplace source[8] et dest[8] par source[9] et dest[9]
 
t'es sur que tu veux pas faire ton prog en C++/MFC ?  :sweat:


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 12-05-2002 à 22:08:08    

à l'invite dos:
ren out?.avi tot?.avi
 :hello:

Reply

Marsh Posté le 12-05-2002 à 22:11:05    

JeSuisPasUnNumero a écrit a écrit :

à l'invite dos:
ren out?.avi tot?.avi
 :hello:  




 :kaola:  
 
 :lol:  :lol:  :lol:


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 12-05-2002 à 22:13:16    

:kaola:  
 
thanks ca marche

Reply

Marsh Posté le 12-05-2002 à 22:18:51    

g parler trop vite
 
ca compile ss pb mais par contre il me chance bien le nom du premier et apres il me sort une erreur fatale ....

Reply

Marsh Posté le 12-05-2002 à 22:18:51   

Reply

Marsh Posté le 12-05-2002 à 22:31:36    

:bounce: plz

Reply

Marsh Posté le 12-05-2002 à 22:38:46    

Ca y'est, j'ai débuggé, ça venait du buffer contenant l'entier converti qui n'était pas initialisé
 
#include <windows.h>
 
void main(void) {
    int n=1;
    char source[9]="out1.avi";
    char dest[9]="tot1.avi";
    char conv[5];
    SetCurrentDirectory("C:\\Video" );
    while (MoveFile ((LPCTSTR)source, (LPCTSTR)dest)) {
        n++;
        _itoa(n, conv, 10);
        source[3]=*conv;
        dest[3]=*conv;
    }
}  
 
Et cette fois ci ça marche, j'ai testé ! Aucun warning, rien ! Nickel
 
 :hello:

 

[jfdsdjhfuetppo]--Message édité par Harkonnen le 12-05-2002 à 22:40:48--[/jfdsdjhfuetppo]


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 12-05-2002 à 22:52:25    

Putain, j'arrive pas à croire que je viens de coder en 4mn50 un renommeur multiple de fichiers en C Ansi...
 
 :lol:  :lol:


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed