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

cs_crsi 9 Messages postés mercredi 2 avril 2003Date d'inscription 5 décembre 2005 Dernière intervention - 3 févr. 2005 à 07:39 - Dernière réponse : cs_crsi 9 Messages postés mercredi 2 avril 2003Date d'inscription 5 décembre 2005 Dernière intervention
- 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
jmp77 1232 Messages postés lundi 4 février 2002Date d'inscription 4 octobre 2006 Dernière intervention - 3 févr. 2005 à 13:37
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.

Merci jmp77 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 89 internautes ce mois-ci

Commenter la réponse de jmp77
Meilleure réponse
japee 1799 Messages postés vendredi 27 décembre 2002Date d'inscription 19 juillet 2018 Dernière intervention - 3 févr. 2005 à 19:33
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 !

Merci japee 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 89 internautes ce mois-ci

Commenter la réponse de japee
Meilleure réponse
cs_Delphiprog 4580 Messages postés samedi 19 janvier 2002Date d'inscription 9 janvier 2013 Dernière intervention - 3 févr. 2005 à 20:46
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

Merci cs_Delphiprog 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 89 internautes ce mois-ci

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

Crsi.

Merci cs_crsi 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 89 internautes ce mois-ci

Commenter la réponse de cs_crsi
jmp77 1232 Messages postés lundi 4 février 2002Date d'inscription 4 octobre 2006 Dernière intervention - 3 févr. 2005 à 09:29
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
cs_crsi 9 Messages postés mercredi 2 avril 2003Date d'inscription 5 décembre 2005 Dernière intervention - 3 févr. 2005 à 12:46
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
japee 1799 Messages postés vendredi 27 décembre 2002Date d'inscription 19 juillet 2018 Dernière intervention - 3 févr. 2005 à 21:17
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.