|
Página 1 de 1
|
Listar Todos Los Archivos De Una Carpeta Y Sus Subcarpetas Recursivamente
Autor |
Mensaje |
v3ctor
Analista Programador
Registrado: May 2013
Mensajes: 1786
Edad: 44 Ubicación: Uruguay
|
Listar Todos Los Archivos De Una Carpeta Y Sus Subcarpetas Recursivamente
buenas,
ando medio desconectado de la programación... pero aquí ando con nuevas ideas....
para el programa taller2015 me he dado cuenta que necesito una analizador de tamaños de archivos..... porque esto
pues supongamos un cliente nos dice que respaldemos la información de la pc y lo mas importante son las fotos lo demás si se respalda se respalda o sino no, no importa.
mi idea es detectar con esta función archivos grandes innecesarios, como programas descargados de muchos megas, o vídeos o películas prescindibles, que agrandan el respaldo y no son importantes.
la idea es hacer un clic en un control dirchoose por ejemplo y que liste todos los archivos en un tableview con 3 datos fundamentales que serán, ruta completa, tipo de archivo y tamaño, al menos eso es lo que busco al principio, después podremos ponernos finos ajajajja.
bueno dejo el tema para que vayamos tirando ideas, códigos o comentarios.
Saludos
=================== Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
última edición por v3ctor el Domingo, 03 Julio 2016, 06:56; editado 1 vez
|
#1 Domingo, 03 Julio 2016, 06:54 |
|
|
v3ctor
Analista Programador
Registrado: May 2013
Mensajes: 1786
Edad: 44 Ubicación: Uruguay
|
Re: Listar Todos Los Archivos De Una Carpeta Y Sus Subcarpetas Recursivamente
empece con este codig que lista las carpetas, hay que agregar los archivos....
esto es un borrador claro para ir viendo como hacerlo
=================== Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
|
#2 Domingo, 03 Julio 2016, 07:47 |
|
|
v3ctor
Analista Programador
Registrado: May 2013
Mensajes: 1786
Edad: 44 Ubicación: Uruguay
|
Re: Listar Todos Los Archivos De Una Carpeta Y Sus Subcarpetas Recursivamente
estoy probando esto donde aparecen los archivos...
MasCarpetas = Dir(ruta &/ carpeta, "*", gb.Directory) con esta linea tengo problema si son carpetas de sistema con el mensaje "acceso prohibido"
=================== Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
|
#3 Lunes, 04 Julio 2016, 19:08 |
|
|
v3ctor
Analista Programador
Registrado: May 2013
Mensajes: 1786
Edad: 44 Ubicación: Uruguay
|
Re: Listar Todos Los Archivos De Una Carpeta Y Sus Subcarpetas Recursivamente
llamada a subrutina:
subrutina:
con este código mas o menos va saliendo algo de lo que pretendo.....
falta mucho todavía.....
=================== Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
|
#4 Lunes, 04 Julio 2016, 19:53 |
|
|
garvied
Usuario
Registrado: Noviembre 2012
Mensajes: 22
Edad: 58
|
Re: Listar Todos Los Archivos De Una Carpeta Y Sus Subcarpetas Recursivamente
Puedes usar Rdir para hacer un dir recursivo a una carpeta y stat para obtener información de cada uno de los archivos
Dim file1 As String
Dim ruta As String
ruta = "/la/ruta/donde/quieres/buscar/los/archivos/" (recuerda acabarlo con '/')
For Each file1 In RDir(ruta, "*.*", gb.file) 'gb.file es para que te devuelva solo ficheros
With Stat(ruta & file1)
Message.Info(.Path) 'esto te devuelve la ruta completa del archivo
Message.Info(.size) 'el tamaño del archivo
Message.info(.Time) 'la fecha de modificación del fichero
'stat te puede devolver mucha más información, revisala
End With
Next
'Espero que te sirva
última edición por garvied el Martes, 05 Julio 2016, 04:10; editado 1 vez
|
#5 Martes, 05 Julio 2016, 04:09 |
|
|
vuott
Analista Programador
Registrado: Agosto 2013
Mensajes: 2086
Edad: 60 Ubicación:
|
Re: Listar Todos Los Archivos De Una Carpeta Y Sus Subcarpetas Recursivamente
Muy bien, garvied !
|
#6 Martes, 05 Julio 2016, 07:42 |
|
|
v3ctor
Analista Programador
Registrado: May 2013
Mensajes: 1786
Edad: 44 Ubicación: Uruguay
|
Re: Listar Todos Los Archivos De Una Carpeta Y Sus Subcarpetas Recursivamente
Puedes usar Rdir para hacer un dir recursivo a una carpeta y stat para obtener información de cada uno de los archivos
Dim file1 As String
Dim ruta As String
ruta = "/la/ruta/donde/quieres/buscar/los/archivos/" (recuerda acabarlo con '/')
For Each file1 In RDir(ruta, "*.*", gb.file) 'gb.file es para que te devuelva solo ficheros
With Stat(ruta & file1)
Message.Info(.Path) 'esto te devuelve la ruta completa del archivo
Message.Info(.size) 'el tamaño del archivo
Message.info(.Time) 'la fecha de modificación del fichero
'stat te puede devolver mucha más información, revisala
End With
Next
'Espero que te sirva
gracias por el aporte, me fije en "funciones de carpetas y archivos" pero no vi RDir en ese momento. (como a veces miramos y no vemos jajaja)
esto anda bien, pero sigo encontrando que si lo usas en directorios de sistema da errores de acceso, habria que ver como evitar eso.
Public Sub ListarArchivos2(ruta As String)
Dim file1 As String
For Each file1 In RDir(ruta, "*.*", gb.file) 'gb.file es para que te devuelva solo ficheros
' With Stat(ruta & file1)'faltaba barra
With Stat(ruta &/ file1)
Print .Path & ":" & .Size
' Message.Info(.Path) 'esto te devuelve la ruta completa del archivo
' Message.Info(.size) 'el tamaño del archivo
' Message.info(.Time) 'la fecha de modificación del fichero
'stat te puede devolver mucha más información, revisala
End With
Next
End
muchas gracias por el aporte garvied
=================== Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
|
#7 Martes, 05 Julio 2016, 19:40 |
|
|
v3ctor
Analista Programador
Registrado: May 2013
Mensajes: 1786
Edad: 44 Ubicación: Uruguay
|
Re: Listar Todos Los Archivos De Una Carpeta Y Sus Subcarpetas Recursivamente
Puedes usar Rdir para hacer un dir recursivo a una carpeta y stat para obtener información de cada uno de los archivos
For Each file1 In RDir(ruta, "*.*", gb.file) 'gb.file es para que te devuelva solo ficheros
'Espero que te sirva
"*.*" <------ este filtro no es bueno, pues solo muestra archivos con .extensión, es mejor poner "*" así te muestra cualquier archivo incluso sino tiene extensión como es muy común en linux
=================== Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
|
#8 Miercoles, 06 Julio 2016, 16:22 |
|
|
v3ctor
Analista Programador
Registrado: May 2013
Mensajes: 1786
Edad: 44 Ubicación: Uruguay
|
Re: Listar Todos Los Archivos De Una Carpeta Y Sus Subcarpetas Recursivamente
les cuento que ando erredado con algo que se supone ya debería tenerlo mas que claro
stat().size devuelve un numero que representa bytes... si no es así corrijan.
estoy haciendo una simple rutina donde esos bytes si son menor que 10 megas y mayor que un kilobyte ponga kilobyte
si es menor de1 kilobyte lo ponga en bytes, si es mayor a un gigabyte lo ponga en gigas.
jajajaj el asunto que no tengo claro los dividendos para pasar de bytes a, kilobytes, megabytes y gigabytes
1024 bytes es un kilobyte asi sucesivamente. alguien tiene claro este tema?
pasar siempre de bytes que es lo que da stat a las demás medidas
Hay en gambas algún comando que haga esto?
No debería tener gambas un comando que maneje conversiones de tamaños?
tipo función convertirDE_A(size, de, a)
=================== Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
última edición por v3ctor el Miercoles, 06 Julio 2016, 18:18; editado 3 veces
|
#9 Miercoles, 06 Julio 2016, 17:29 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
Re: Listar Todos Los Archivos De Una Carpeta Y Sus Subcarpetas Recursivamente
Esto lo uso en el cliente ftp...
=================== No podemos regresar
última edición por shordi el Miercoles, 06 Julio 2016, 18:51; editado 1 vez
|
#10 Miercoles, 06 Julio 2016, 18:50 |
|
|
|
Temas parecidos
Temas parecidos
|
Página 1 de 1
|
Usuarios navegando en este tema: 0 registrados, 0 ocultos y 0 invitados Usuarios registrados conectados: Ninguno
|
No puede crear mensajes No puede responder temas No puede editar sus mensajes No puede borrar sus mensajes No puede votar en encuestas No puede adjuntar archivos Puede descargar archivos No puede publicar eventos en el calendario
|
|
|
|
|