Executer la copie d'un fichier - Copie de sauvegarde

Résolu
cs_crsi Messages postés 9 Date d'inscription mercredi 2 avril 2003 Statut Membre Dernière intervention 5 décembre 2005 - 3 févr. 2005 à 07:39
cs_crsi Messages postés 9 Date d'inscription mercredi 2 avril 2003 Statut Membre Dernière intervention 5 décembre 2005 - 4 févr. 2005 à 20:43
Bonjour à tous,

Comment puis-je faire pour lancer une copie d'un fichier (dans un répertoire) et le déposer, sous un autre nom (date du jour + heure) dans un autre répertoire. Le tout en pressant un simple bouton dans une application delphi.

ex: Copier le fichier c:\texte\Lisezmoi.txt dans c:\sauvegarde\lisezmoi_030205-0700.txt

Je ne connais pas le code pour lancer une application .bat, .exe, ...

Bien grand merci de partager votre savoir faire avec un débutant.

Crsi

7 réponses

jmp77 Messages postés 1119 Date d'inscription lundi 4 février 2002 Statut Membre Dernière intervention 4 octobre 2006 7
3 févr. 2005 à 13:37
Oula je n'ai pas tout compris peux tu developper ta demande stp ?

Bonne prog,
JMP77.

N'oubliez pas de cliquer sur réponse acceptée.
3
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
3 févr. 2005 à 19:33
Je crois voir ce que tu veux faire.

Voilà une manière de procéder adaptée d'un de mes programmes et qui donne ce résultat.

Je ne sais pas si ça te convient exactement, mais le principe est là.



Les variables :



var

LaDate, LHeure: String;

DateFichier, HeureFichier: String;

Nom: String; // nom du fichier sans extension

Ext: String; // extension du fichier

NomFichier: String; // nom du fichier avec date et heure



... et quelques lignes de code :



Ext := '.txt' // ou '.jpg', ou ce que tu veux...

Nom := 'MonFichier';

LaDate := DateToStr(Now); // date actuelle

LHeure := TimeToStr(Now); // heure actuelle

{on adapte pour la mise en forme et pour éviter les '/' et les ':' dans le nom du fichier}

DateFichier := Copy(LaDate, 7, 2) + '-' + Copy(LaDate, 4, 2) + '-' + Copy(LaDate, 1, 2);

HeureFichier := Copy(LHeure, 1, 2) + 'h' + Copy(LHeure, 4, 2) + 'mn' + Copy(LHeure, 7, 2) + 's';

NomFichier := Nom + DateFichier + '(' + HeureFichier + ')' + Ext;

Bonne prog', faut pas mollir

N'oubliez pas de valider "Réponse acceptée" si ça vous convient, de toute manière vous ne pouvez pas valider autre chose !
3
cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 32
3 févr. 2005 à 20:46
Hé Japee, voilà qui va encore faire sourire JulioDelphi
Avec les fonctions Format & Co, on peut faire beaucoup plus simplement.

Et je lui donnerai entièrement raison : pourquoi faire compliqué quand on peut faire simple ?
L'équivalent du code que tu donnes est :
<!--StartFragment--><!--StartFragment-->
var
  Nom: string;
const
  Ext = '.txt';
begin
  Nom := 'NomDuFichier';
  Nom := Nom + FormatDateTime('_ddmmyy_hhmmss', Now) + Ext;



Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.
http://www.croix-rouge.fr/index/partner_campagne.html
3
cs_crsi Messages postés 9 Date d'inscription mercredi 2 avril 2003 Statut Membre Dernière intervention 5 décembre 2005
4 févr. 2005 à 20:43
Bien grand merci ... Ô GENIES DE L'INFORMATIQUE ... fantastique ... ça marche !!!!
Grace à vous tous, je commence à reprendre goût à la programmation ...

Crsi.
3

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jmp77 Messages postés 1119 Date d'inscription lundi 4 février 2002 Statut Membre Dernière intervention 4 octobre 2006 7
3 févr. 2005 à 09:29
Hello,



La commande pour copier un fichier est la suivante :



uses windows



CopyFile(Pchar(c:\texte\Lisezmoi.txt
),Pchar(c:\sauvegarde\lisezmoi_030205-0700.txt
),False)

Bonne prog,
JMP77.

N'oubliez pas de cliquer sur réponse acceptée.
0
cs_crsi Messages postés 9 Date d'inscription mercredi 2 avril 2003 Statut Membre Dernière intervention 5 décembre 2005
3 févr. 2005 à 12:46
Bien grand merci de me répondre si vite, ...

Mon second soucis est que je voudrais que la copie du fichier soit générée chaque fois que l'on click sur le bouton et que le nouveau nom de fichier composé de : Nom de fichier, date et l'heure du moment, soit créé par le programme et non pas par l'utilisateur qui dans l'exmple donné ci-dessus doit encoder manuellement le nouveau nom du fichier.

Est-ce possible ??? Merci.
0
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
3 févr. 2005 à 21:17
Salut, Delphiprog !



C'est un vieux bout de code que j'avais "exhumé" et dépoussiéré. Un coup de flemme, quoi.

Sûr que FormatDateTime est plus simple.

Je suis d'autant plus honteux que j'ai déjà posté un code sur le site traitant de FormatDateTime :

FORMATDATETIME - AFFICHAGE D'UNE DATE ET/OU D'UNE HEURE DANS UNE CHAÎNE

Les cordonniers sont souvent les plus mal chaussés

Bonne prog', faut pas mollir

N'oubliez pas de valider "Réponse acceptée" si ça vous convient, de toute manière vous ne pouvez pas valider autre chose !
0
Rejoignez-nous