C/Visual C - FECHA-HORA MODIFICACION DE ARCHIVO.

 
Vista:

FECHA-HORA MODIFICACION DE ARCHIVO.

Publicado por Pedrock (5 intervenciones) el 08/02/2007 09:58:06
Buenos días,

Estoy tratando de averiguar, en C++ y Linux, por separado el dia, el mes, el año, la hora y el minuto de modificacion de los archivos. Estoy usando la funcion stat de la siguiente manera:

(stat(ruta.c_str(), &temp) -> donde ruta es un string que contiene la ruta del archivo y temp es una estructura de tipo stat.
Con el metodo &temp.st_ctime, por definicion se consigue la hora de la ultima modificacion.
Pero, ¿de que manera consigo el dia, mes, año y minuto?
Trate, con la libreria time.h, transformar este dato a lo que yo quiero de la siguiente manera:

petm = localtime(&temp.st_ctime) (petm esta definida asi struct tm* petm = localtime(&t))
y lo convierto con las siguientes instrucciones
date = petm->tm_year; date = petm->tm_mon; date = petm->tm_day; (date es un int)

Suponia que de un dato hora, no me iba a devolver el resto de datos que yo queria y asi fue... Pero lo probe por si acaso. En algunos casos, el año me lo ha devuelto a 107, el mes a 0, etc... En principio tendria que devolver año 2007 y mes 01 o 02.

¿Como puedo resolverlo?

MUCHAS GRACIAS DE ANTEMANO.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:FECHA-HORA MODIFICACION DE ARCHIVO.

Publicado por Nelek (816 intervenciones) el 08/02/2007 10:04:50
Creo que el fallo lo tienes en la consideración del origen de tiempos. No te se precisar cuando es exactamente pero el origen de tiempos para las funciones del time.h no es el nacimiento de Cristo, sino el 1 de enero de mil novecientos algo. Simplemente tendras que transformar las cosas.

Poniendo como origen las 00:00:00 del 1 de enero de 1900. Entonces los resultados que comentas tienen logica.

Anyo 107 + 1900 = 2007
Mes 0 = Enero (como los desfases de los arrays, primer elemento posicion 0)

etc...

Mira a ver por el foro que se han tratado cosas parecidas en alguna ocasion, quiza encuentres lo que necesitas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:FECHA-HORA MODIFICACION DE ARCHIVO.

Publicado por Pedrock (5 intervenciones) el 08/02/2007 10:32:29
Si, lo que comentas tiene mucha logica. Lo pruebo y confirmo que funcione para que le sirva al resto.

Gracias otra vez.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:FUNCIONA FECHA-HORA MODIFICACION DE ARCHIVO.

Publicado por Pedrock (5 intervenciones) el 08/02/2007 20:41:57
Buenas!

Efectivamente, sumando 107 al año y 1 al mes, me proporcionaba los datos correctamente.

Muchas gracias de nuevo y un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar