Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   API de Windows (https://www.clubdelphi.com/foros/forumdisplay.php?f=7)
-   -   añadir fecha del sistema a un directorio (https://www.clubdelphi.com/foros/showthread.php?t=82902)

manujimenez 23-04-2013 16:52:08

añadir fecha del sistema a un directorio
 
Alguien sabe como añadir fecha del sistema a un directorio ya existente. Por ejemplo c:\data renombrarlo a c:\data\23-04-2013_16:19:00:00

Gracias

ecfisa 23-04-2013 19:18:46

Hola manujimenez, bienvenido a Club Delphi :)

Como a todos los que se inician te invitamos a que leas nuestra guía de estilo.

Cita:

Empezado por manujimenez (Mensaje 459126)
Por ejemplo c:\data renombrarlo a c:\data\23-04-2013_16:19:00:00

En ese caso estaríamos creando una subcarpeta de data, el resultado tendría que ser algo como: c:\data 23-04-2013_16:19:00:00.

Para realizar la tarea podes usar la función API MoveFile, sin embargo aún tenemos un problema con los caracteres que el S.O. no permite para un nombre, como por ejemplo los ':' o '/'.

Entonces creo que podrías hacer algo similar a:
Código Delphi [-]
function RenameFolder(const aFileName: TFileName): Boolean;
var
  tmp: string;
begin
  tmp := aFileName + ' '+
         StringReplace(DateToStr(Now), '/', '-', [rfReplaceAll]) + ' ' +
         StringReplace(TimeToStr(Now), ':', '.', [rfReplaceAll]);
  Result := MoveFile(PChar(aFileName), PChar(tmp));
end;

Llamada:
Código Delphi [-]
  RenameFolder('C:\DATA');

Saludos.

manujimenez 24-04-2013 12:08:48

Solucionado
 
Ok gracias por responderme acabé dando con ello... Incluyo la línea por si a alguien le sirve.

begin
RenameFile('c:\www', 'c:\wwwzzz'+FormatDateTime('yyyymmdd', Now));
end.

Casimiro Notevi 24-04-2013 14:26:56

Recuerda poner los tags al código fuente, ejemplo:



Gracias :)

ecfisa 24-04-2013 17:27:22

Hola manujimenez

Me alegro que lo hayas solucionado y agradecemos que nos publiques como lo hiciste. ;):)

Pero ese código te daría un resultado como: "c:\wwwzzz20130424" que es muy diferente a lo que habías solicitado en tu primer mensaje: "c:\data\23-04-2013_16:19:00:00"

Saludos. :)


La franja horaria es GMT +2. Ahora son las 11:35:06.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi