Foros del Web » Programando para Internet » ASP Clásico »

Conocer fecha creación archivo

Estas en el tema de Conocer fecha creación archivo en el foro de ASP Clásico en Foros del Web. Hola, quisiera saber si hay alguna forma de recorrer los archivos de una carpeta y leer su fecha de creación. Lo que quiero hacer es ...
  #1 (permalink)  
Antiguo 22/07/2011, 03:42
Avatar de angel_dope  
Fecha de Ingreso: noviembre-2002
Ubicación: Valencia
Mensajes: 737
Antigüedad: 21 años, 5 meses
Puntos: 8
Conocer fecha creación archivo

Hola, quisiera saber si hay alguna forma de recorrer los archivos de una carpeta y leer su fecha de creación. Lo que quiero hacer es ir leyendo estas fechas y aquellos archivos cuya fecha de creación sea más antigua de X tiempo (digamos 3 meses) borrarlos.
Hay alguna forma de hacer esto?? Salu2 y gracias por adelantado
__________________
Vayamos por Partes :: Jack el Destripador
  #2 (permalink)  
Antiguo 22/07/2011, 03:51
Avatar de Batan  
Fecha de Ingreso: septiembre-2010
Ubicación: Madrid
Mensajes: 408
Antigüedad: 13 años, 8 meses
Puntos: 63
Respuesta: Conocer fecha creación archivo

No creo que se pueda sacar la fecha de creacion de los archivos.
Puedes saber cuando se modificaron por ultima vez.

Código ASP:
Ver original
  1. <%
  2. ' Creamos el Objeto FileSystemObject
  3. Set FSO = Server.CreateObject("Scripting.FileSystemObject")
  4. ' Tomamos el archivo que vamos a estudiar...
  5. Set RS = FSO.GetFile(Server.MapPath("archivo.asp"))
  6. ' Extraemos su última modificación y lo guardamos en una variable...
  7. modificado = RS.DateLastModified
  8. %>
  9. Este archivo fue actualizado por última vez: <%=(modificado)%>
  10. <%
  11. Set RS = Nothing
  12. Set FSO = Nothing
  13. %>

Este Script lo saque de http://www.soloasp.com.ar/vereje.asp?eje=31 , por si quieres echarle un vistazo.

Saludos
  #3 (permalink)  
Antiguo 22/07/2011, 03:55
Avatar de angel_dope  
Fecha de Ingreso: noviembre-2002
Ubicación: Valencia
Mensajes: 737
Antigüedad: 21 años, 5 meses
Puntos: 8
Respuesta: Conocer fecha creación archivo

Pues también me sirve, porque esos archivos una vez se crean, no se vuelven a modificar, por lo que la fecha de modificación coincide con la de creación, así que con esto creo que me apaño. Muchas gracias ;)
__________________
Vayamos por Partes :: Jack el Destripador
  #4 (permalink)  
Antiguo 22/07/2011, 03:58
Avatar de Batan  
Fecha de Ingreso: septiembre-2010
Ubicación: Madrid
Mensajes: 408
Antigüedad: 13 años, 8 meses
Puntos: 63
Respuesta: Conocer fecha creación archivo

Claro.
De nada
  #5 (permalink)  
Antiguo 22/07/2011, 05:49
Avatar de angel_dope  
Fecha de Ingreso: noviembre-2002
Ubicación: Valencia
Mensajes: 737
Antigüedad: 21 años, 5 meses
Puntos: 8
Respuesta: Conocer fecha creación archivo

Bueno, dejo el código completo por si a alguien le viene bien. Lo que se hace es recorrer una carpeta completa y leyendo las fechas de modificación. Si la fecha tiene más de siete días, el archivo se borra


Código ASP:
Ver original
  1. set FSO = Server.CreateObject("Scripting.FileSystemObject")
  2. 'definimos la ruta a la carpeta que queremos recorrer
  3. set oCarpeta = FSO.GetFolder(Server.MapPath("../../../extranetweb/download"))
  4. set colFicheros = oCarpeta.Files
  5.  
  6. 'Recorremos la colección de ficheros (objetos File)
  7. for each fichero in colFicheros
  8.         'capturamos la fecha de modificación
  9.     modificado = fichero.DateLastModified
  10.     modificado=FormatDateTime(modificado,2)
  11.     fecha_actual = FormatDateTime(date,2)
  12.         'sacamos la diferencia en días con la fecha actual
  13.     diferencia = datediff("d", modificado, fecha_actual)
  14.     if diferencia > 7 then 'si la diferencia es superior a 7, se elimina el archivo
  15.         fichero.delete
  16.     end if
  17. next
__________________
Vayamos por Partes :: Jack el Destripador
  #6 (permalink)  
Antiguo 22/07/2011, 06:01
Avatar de Batan  
Fecha de Ingreso: septiembre-2010
Ubicación: Madrid
Mensajes: 408
Antigüedad: 13 años, 8 meses
Puntos: 63
Respuesta: Conocer fecha creación archivo

Deberian ponerlo en las Faq del foro.
Esta interesante.
  #7 (permalink)  
Antiguo 22/07/2011, 06:07
Avatar de angel_dope  
Fecha de Ingreso: noviembre-2002
Ubicación: Valencia
Mensajes: 737
Antigüedad: 21 años, 5 meses
Puntos: 8
Respuesta: Conocer fecha creación archivo

He hecho una pequeña modificación: he añadido un pequeño control de errores, por si nos topamos con un archivo de solo lectura o sin permisos para borrarlo, de esta forma, no se parará el script, sino que continuará con el siguiente archivo.

Código ASP:
Ver original
  1. set FSO = Server.CreateObject("Scripting.FileSystemObject")
  2. 'definimos la ruta a la carpeta que queremos recorrer
  3. set oCarpeta = FSO.GetFolder(Server.MapPath("../../../extranetweb/download"))
  4. set colFicheros = oCarpeta.Files
  5.  
  6. 'Recorremos la colección de ficheros (objetos File)
  7. for each fichero in colFicheros
  8. 'capturamos la fecha de modificación
  9. modificado = fichero.DateLastModified
  10. modificado=FormatDateTime(modificado,2)
  11. fecha_actual = FormatDateTime(date,2)
  12. 'sacamos la diferencia en días con la fecha actual
  13. diferencia = datediff("d", modificado, fecha_actual)
  14. if diferencia > 7 then 'si la diferencia es superior a 7, se elimina el archivo
  15.     On Error Resume Next ' catch errors
  16.         fichero.delete
  17.     If Err <> 0 Then ' error occurred
  18.         strErr = Err.Description & "<br>"
  19.     else
  20.         bSuccess = True
  21.     End If
  22. end if
  23. next
__________________
Vayamos por Partes :: Jack el Destripador
  #8 (permalink)  
Antiguo 22/07/2011, 22:16
Avatar de phillipecw  
Fecha de Ingreso: septiembre-2008
Ubicación: Lima, Peru, Peru
Mensajes: 142
Antigüedad: 15 años, 7 meses
Puntos: 19
Respuesta: Conocer fecha creación archivo

Muy interesante... gracias por compartir el código
__________________

Phillipe Calmet Williams
Freelance Front-End Developer, Graphic & Web Designer www.phillipecw.com

Etiquetas: borrar, creación, fecha, fso
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:52.