ADIR() en directorio extenso

05/08/2003 - 19:35 por JMA | Informe spam
Hola:

Tengo problemas al hacer un ADIR en un directorio con 20.000 ficheros.

Entiendo que es por el tamaño maximo de un array que creo que es de 65.000,
y lo que haria falta seria 20.000 x 50.000 por lo menos
ya que por cada fichero guarda en el array 5 datos (nombre, tamaño,fecha,
...)

Es esto posible?
a) ampliar el tamaño del array.
o
b) enviar el resultado del ADIR a un cursor por ejemplo.

Un saludo,
Jose M.Ansola
 

Leer las respuestas

#1 Luis María Guayán
05/08/2003 - 20:58 | Informe spam
Si solo te interesa el nombre del archivo, puedes utilizar SYS(2000)

Ej:
lc = SYS(2000,"c:\*.txt")
DO WHILE NOT EMPTY(lc)
? lc
lc = SYS(2000,"c:\*.txt",1)
ENDDO

Luis María Guayán
Vicente Trapani S.A.
Tucumán, Argentina
_____________________________________________
Microsoft Visual FoxPro MVP
SysOp de PortalFox - http://www.portalfox.com
_____________________________________________
Proteje al zorro, úsalo legalmente


"Esparta Palma" wrote in message
news:
En UT hay un archivo FileID #10070 que aparentemente tiene resuelta tu
duda.

http://www.universalthread.com/wcon...sformation~2,54,33,10070

La otra es utilizar un cursor y las funciones API sobre archivos (creo
es FindFirst), dejame revisar si tengo algo al respecto, o quizás otro
compañero pueda ayudar. Lo que si es definitivo es que ninguna versión
de FoxPro o Visual FoxPro podrás extender el arreglo a mas de 65,000
elementos (hasta la versión 8, nop).


Apoya a Visual FoxPro usándolo legalmente
¸,ø¤º°`°º¤ø,¸¸,ø¤º°`°º¤ø,¸¸,ø¤º°`°º¤ø,¸¸,ø¤º°`°º
Espartaco Palma Martínez
SysOp PortalFox ( http://www.PortalFox.com )
email:
Acapulco, Guerrero. México


JMA wrote:

> Hola:
>
> Tengo problemas al hacer un ADIR en un directorio con 20.000 ficheros.
>
> Entiendo que es por el tamaño maximo de un array que creo que es de
> 65.000,
> y lo que haria falta seria 20.000 x 50.000 por lo menos
> ya que por cada fichero guarda en el array 5 datos (nombre,
> tamaño,fecha,
> )
>
> Es esto posible?
> a) ampliar el tamaño del array.
> o
> b) enviar el resultado del ADIR a un cursor por ejemplo.
>
> Un saludo,
> Jose M.Ansola
>
>

Preguntas similares