FileFindNext

Sigue con la búsqueda empezada por la función FileFindFirst().

bool  FileFindNext(
   long      search_handle,         // manejador de búsqueda
   string&   returned_filename      // nombre del archivo o subcarpeta encontrada
   );

Parámetros

search_handle

[in]  Manejador de búsqueda recibido de la función FileFindFirst().

returned_filename

[out] Nombre del siguiente archivo o subcarpeta encontrada. Only the file name is returned (including the extension), the directories and subdirectories are not included no matter if they are specified or not in the search filter.

Valor devuelto

En caso del éxito devuelve true, de lo contrario devuelve false.

Ejemplo:

//--- mostramos la ventana de parámetros de entrada al iniciar el script
#property script_show_inputs
//--- filtro
input string InpFilter="*";
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   string file_name;
   int    i=1;
//--- obtenemos el manejador de búsqueda en la raíz de la carpeta local
   long search_handle=FileFindFirst(InpFilter,file_name);
//--- comprobamos si la función FileFindFirst() se ha ejecutado con éxito
   if(search_handle!=INVALID_HANDLE)
     {
      //--- comprobamos en el ciclo si las cadenas pasadas son los nombres de los archivos o de las carpetas
      do
        {
         ResetLastError();
         //--- si es un archivo, la función devuelve true, y si es una carpeta, la función genera el error ERR_FILE_IS_DIRECTORY
         FileIsExist(file_name);
         PrintFormat("%d : %s name = %s",i,GetLastError()==ERR_FILE_IS_DIRECTORY ? "Directory" : "File",file_name);
         i++;
        }
      while(FileFindNext(search_handle,file_name));
      //--- cerramos el manejador de la búsqueda
      FileFindClose(search_handle);
     }
   else
      Print("Files not found!");
  }

Véase también

FileFindFirst, FileFindClose