#include-once ; Autor: Miguel Barraza ; contacto: miguelbarraza2015@gmail.com ; facebook y twitter: barrazamiguel func DirContents($root,$type="all") local $fl,$files,$cont,$datos,$ext ; carga todos los archivos del directorio y lo espesifica en un array ; parámetros = 2 ; 1: la ruta de la carpeta a examinar ; 2: el tipo de extensión que deseas cargar, si no espesificas ninguno carga todos. ; si espesificamos el tipo de archivo ; carga un array con todo el listado de archivos. ; si cargamos todos los archivos (por default esta opción es verificada) ; devuelve un array bidimensional con los siguientes datos: ; nombre del archivo o carpeta ; y en la segunda dimensión la extensión del archivo. ; si es una carpeta lleva "dir". if FileExists($root) == 0 Then SetError(1) ; la carpeta no existe. return 0 EndIf $fl = _FileListToArray($root) If IsArray($fl) == 0 Then SetError(2) ; no ahi archivos para cargar. return 0 EndIf if $type == "all" Then dim $files[$fl[0]+1][2] $files[0][0]=$fl[0] else $cont=1 dim $files[$cont] $files[0]=0 EndIf for $i=1 to $fl[0] step 1 $datos = StringSplit($fl[$i], ".") if $type == "all" Then ; cargamos todos los archivos: if $datos[0] == 2 Then $files[$i][0]=$fl[$i] $files[$i][1]=$datos[2] else $files[$i][0]=$fl[$i] $files[$i][1]="dir" EndIf else ; solo cargamos los archivos con la extensión espesificada. If $datos[0] == 2 Then $ext=StringLower($datos[2]) if $ext == $type Then redim $files[$cont+1] $files[$cont]=$fl[$i] $files[0]=$cont $cont+=1 EndIf else ; si pidió cargar carpetas las seleccionamos: if $type == "dir" Then redim $files[$cont+1] $files[$cont]=$fl[$i] $files[0]=$cont $cont+=1 EndIf EndIf EndIf next return $files EndFunc ;== carga todos los archivos del directorio y lo espesifica en un array