![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
Hora en que se grabó un fichero
Hola a todos. Estoy haciendo una aplicación en C++ Builder y necesito saber la hora en que se grabó un fichero, realmente es para ir mirando a este fichero cada poco tiempo y saber si ha sido modificado. Gracias
|
|
#2
|
||||
|
||||
|
Revisa esta entrada de mi blog: Fechas de un fichero (creación, modificación y últ. acceso)
Está para delphi., pero supongo que las funciones deben ser equivalentes y el código que se muestra te puede dar una idea de cómo hacerlo. Usa la API GetFileTime que es la misma llamada que deberás utilizar tú.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
|
#3
|
||||
|
||||
|
Código:
TDate GetModifyFileDate(char* FileName)
{
WIN32_FILE_ATTRIBUTE_DATA FileData;
SYSTEMTIME SystemTime;
GetFileAttributesEx(FileName, GetFileExInfoStandard, &FileData);
FileTimeToSystemTime(&FileData.ftLastWriteTime, &SystemTime);
return EncodeDate(SystemTime.wYear, SystemTime.wMonth, SystemTime.wDay);
}
|
|
#4
|
|||
|
|||
|
Muchas gracias a los dos por darme una solución a mi pregunta. Pero os tengo que decir que estoy totalmente pez en el uso de las API de Windows y no consigo saber la hora que ha sido modificado un fichero con vuestro codigo. Seguro que está bien y la culpa es mia. Perdonarme, pero ¿me podéis empujar un poquito mas? con un ejemplo. ¿Á qué hora fue modificado el fichero C:/ejemplo.txt ?. Os doy mi palabra de que llevo un montón de horas intentándolo pero no lo consigo. Muchísimas gracias.
|
|
#5
|
||||
|
||||
|
Un formulario con un TEdit, un TOpenDialog, un TDateTimePicker y un botón.
Al apretar el botón se abrirá el OpenDialog, elegimos un archivo. Tras la elección el nombre del archivo aparece en el Edit y la fecha de última modificación en el DateTimePicker. Código:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
TDate GetModifyFileDate(char* FileName)
{
WIN32_FILE_ATTRIBUTE_DATA FileData;
SYSTEMTIME SystemTime;
GetFileAttributesEx(FileName, GetFileExInfoStandard, &FileData);
FileTimeToSystemTime(&FileData.ftLastWriteTime, &SystemTime);
return EncodeDate(SystemTime.wYear, SystemTime.wMonth, SystemTime.wDay);
}
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
if(OpenDialog1->Execute()){
Edit1->Text = OpenDialog1->FileName;
DateTimePicker1->Date = GetModifyFileDate(OpenDialog1->FileName.c_str());
}
}
//---------------------------------------------------------------------------
Saludos. |
|
#6
|
||||
|
||||
|
Una apreciación, si estás intentando rutas de archivo directamente en C/C++.
Recuerda que el caracter "\" es de control por lo que si se quiere es usarlo talcual, se debe escribir dos veces. Así, C:\ejemplo.txt será "C:\\ejemplo.txt" Código:
TDate Date = GetModifyFileDate("C:\\ejemplo.txt");
|
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| seleccionar hora en datetimepicker desde hora especifica | gonza_619 | Varios | 4 | 21-11-2010 20:42:19 |
| como grabo la hora en un campo | esimon | OOP | 2 | 14-05-2007 19:33:52 |
| Fecha y Hora de creacion de un fichero | RaulChemical | OOP | 1 | 10-08-2006 09:31:29 |
| Como grabo GIF en Interbase 6.0 | sercornejov | Conexión con bases de datos | 3 | 03-09-2003 05:42:39 |
| Copmo grabo un registro a varias tablas | kia | Conexión con bases de datos | 4 | 18-07-2003 23:58:00 |
|