Executer la copie d'un fichier - Copie de sauvegarde [Résolu]

Messages postés
9
Date d'inscription
mercredi 2 avril 2003
Dernière intervention
5 décembre 2005
- - Dernière réponse : cs_crsi
Messages postés
9
Date d'inscription
mercredi 2 avril 2003
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
Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
Messages postés
1232
Date d'inscription
lundi 4 février 2002
Dernière intervention
4 octobre 2006
6
3
Merci
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.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 121 internautes nous ont dit merci ce mois-ci

Commenter la réponse de jmp77
Messages postés
1799
Date d'inscription
vendredi 27 décembre 2002
Dernière intervention
19 juillet 2018
3
Merci
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 !

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 121 internautes nous ont dit merci ce mois-ci

Commenter la réponse de japee
Messages postés
4580
Date d'inscription
samedi 19 janvier 2002
Dernière intervention
9 janvier 2013
25
3
Merci
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

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 121 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_Delphiprog
Messages postés
9
Date d'inscription
mercredi 2 avril 2003
Dernière intervention
5 décembre 2005
3
Merci
Bien grand merci ... Ô GENIES DE L'INFORMATIQUE ... fantastique ... ça marche !!!!
Grace à vous tous, je commence à reprendre goût à la programmation ...

Crsi.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 121 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_crsi
Messages postés
1232
Date d'inscription
lundi 4 février 2002
Dernière intervention
4 octobre 2006
6
0
Merci
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.
Commenter la réponse de jmp77
Messages postés
9
Date d'inscription
mercredi 2 avril 2003
Dernière intervention
5 décembre 2005
0
Merci
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.
Commenter la réponse de cs_crsi
Messages postés
1799
Date d'inscription
vendredi 27 décembre 2002
Dernière intervention
19 juillet 2018
0
Merci
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 !
Commenter la réponse de japee

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.