FoxPro/Visual FoxPro - Espacio de un directorio.

 
Vista:

Espacio de un directorio.

Publicado por Michel (5 intervenciones) el 23/08/2005 02:14:43
Tengo un directorio que contiene 395 objetos entre directorios y archivos y necesito saber cuanto pesa cada objeto en bytes, he utilizado el comando ADIR() para obtener en una matriz los datos de lo que hay dentro de un directorio, me devuelve los datos de los archivos, pero si hay un directorio dentro de éste, no lo considera en la matriz.

*Visual Foxpro 7.0 en Windows 98.
With Thisform
Set Defa To ?
Bytes = 0
Cantidad = Adir(Matriz,'*.*')
For Ncount = 1 To Cantidad
Bytes = Bytes + Matriz(Ncount,2)
Endfor
.label1.Caption = Sys(5)+ Sys(2003)
.label2.Caption = Alltrim(Str(Cantidad))
.label3.Caption = Alltrim(Str(Bytes,12,2)) && bytes
.label4.Caption = Alltrim(Str(Bytes/1024,12,2)) && Kb
.label5.Caption = Alltrim(Str((Bytes/1024)/1024,12,2)) && Mb
.label6.Caption = Alltrim(Str(((Bytes/1024)/1024)/1024,12,2)) && Gb
Endwith

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:Espacio de un directorio.

Publicado por LAP (26 intervenciones) el 23/08/2005 07:46:54
Necesitas realizar una función recursiva, ya que en principio no sabes cuantos niveles internos de directorios vas a procesar. Es posible que esta función este disponible en algún sitio de Internet. En su forma más simple esta función no llega a las 10 líneas.
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