AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Ayuda / WLanguage / Funciones WLanguage / Funciones estándar / Funciones de archivos
  • Condiciones de uso
  • Nivel de compresión de los archivos ZIP o 7z
  • Códigos de error
  • Añadir un archivo que ya se encuentra en el archivo
  • Índice de los archivos en el archivo comprimido
  • Ruta conservada (archivos en formato WDZ o ZIP)
WINDEV
WindowsLinuxJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac Catalyst
Otros
Procedimientos almacenados
Agrega y comprime automáticamente cualquier tipo de archivo en un archivo CAB, ZIP, WDZ, 7z, TAR, gzip o TGZ (TAR.GZ).
Esta función no puede utilizarse con archivos RAR.
Observaciones:
Novedad versión 2025
Windows Ahora se admite el formato gzip (extensión .gz).
Ejemplo
MyArchive is zipArchive
ResCreate is int
ResAddFile is int
// Create the archive 
ResCreate = MyArchive.Create("C:\Temp\Archive.zip")
IF ResCreate = 0 THEN
	// Add a file into an archive
	ResAddFile = MyArchive.AddFile(...
			"C:\MyDirectory\MyFiles\File.pdf", zipDrive)
END
// Display an error message if the file was not added
IF ResAddFile <> 0 THEN 
	Error(zipMsgError(ResAddFile))
END
Sintaxis

Agregar un archivo y conservar una parte de la ruta del archivo Ocultar los detalles

<Result> = <Archive>.AddFile(<File path> [, <Path section to keep> [, <Progress>]])
<Result>: Entero
  • 0 si se ha añadido el archivo,
  • un código de error (valor superior a 0) en caso contrario. Para obtener más información sobre los códigos de error, consulte las observaciones.
<Archive>: Variable de tipo zipArchive
Nombre de una variable de tipo zipArchive correspondiente al archivo en el que debe añadirse el archivo.
<File path>: Cadena de caracteres
Ruta del archivo que se añadirá al archivo (260 caracteres como máximo, 90 como máximo para archivos TAR, gzip o TGZ (TAR.GZ)). Esta ruta puede ser una ruta completa o una ruta relativa al directorio actual. Los caracteres comodín (*,? ) no están permitidos en el nombre del archivo.
Este archivo no debe superar los 4 GB. De lo contrario, se produce un error.
<Path section to keep>: Constante opcional
Indica la sección de la ruta del archivo que se mantendrá en el archivo:
zipDirectory
(Valor predeterminado)
Guarda los diferentes directorios de la ruta del archivo, así como el nombre y la extensión del archivo. Por ejemplo: \Directorio\Archivos\NombreArchivo.pdf
zipDriveConserva la ruta completa y absoluta de los archivos (nombre del disco, nombre de los directorios, nombre del archivo y extensión del archivo). Por ejemplo: C:\Directorio\Archivos\NombreArchivo.pdf
Formato ZIP: Esta constante no tiene ningún efecto.
Formato 7z: Esta constante y la constante zipDirectorio tienen el mismo efecto.
zipNoneMantiene el nombre y la extensión del archivo. Por ejemplo: NombreArchivo.pdf

Si utiliza un archivo en formato .CAB, solo se tiene en cuenta la constante zipNone. De hecho, el formato .CAB no se puede utilizar para guardar las rutas dentro del archivo.
<Progress>: Nombre del control o del procedimiento
Modo de gestión de la barra de progreso. Este parámetro puede corresponder a:
Si utiliza un archivo TAR, gzip o TGZ (TAR.GZ)la barra de progreso se actualiza sólo después de añadir el archivo.

Agregar un archivo ignorando partes de la ruta del archivo Ocultar los detalles

<Result> = <Archive>.AddFile(<File path> [, <Path section to ignore> [, <Progress>]])
<Result>: Entero
  • 0 si se ha añadido el archivo,
  • un código de error (valor superior a 0) en caso contrario. Para obtener más información sobre los códigos de error, consulte las Observaciones.
<Archive>: Variable de tipo zipArchive
Nombre de una variable de tipo zipArchive correspondiente al archivo en el que debe añadirse el archivo.
<File path>: Cadena de caracteres
Ruta del archivo que se añadirá al archivo (260 caracteres como máximo, 90 como máximo para archivos TAR, gzip o TGZ (TAR.GZ)). Esta ruta puede ser una ruta completa o una ruta relativa al directorio actual. Los caracteres comodín (*,? ) no están permitidos en el nombre del archivo.
Este archivo no debe superar los 4 GB. De lo contrario, se produce un error.
<Path section to ignore>: Cadena de caracteres opcional
Indica la sección de la ruta del archivo que no debe almacenarse en el archivo.
Por ejemplo, en WINDEV, si la ruta completa del archivo añadido en el archivo es: "C:\Mis Documentos\Trabajo\Informe.doc" y si <Path section to ignore> está configurado como "C:\Mis Documentos\", sólo se conservará la sección "Trabajo\Informe.doc".
<Progress>: Nombre del control o del procedimiento
Modo de gestión de la barra de progreso. Este parámetro puede corresponder a:
Si utiliza un archivo TAR, gzip o TGZ (TAR.GZ)la barra de progreso se actualiza sólo después de añadir el archivo.

Agregar un archivo desde un búfer (solo formatos WDZ y ZIP) Ocultar los detalles

<Result> = <Archive>.AddFile(<File to add> , <Buffer management> , <Path to keep> [, <Progress>])
<Result>: Entero
  • 0 si se ha añadido el archivo,
  • un código de error (valor superior a 0) en caso contrario. Para obtener más información sobre los códigos de error, consulte las Observaciones.
<Archive>: Variable de tipo zipArchive
Nombre de una variable de tipo zipArchive correspondiente al archivo en el que debe añadirse el archivo.
<File to add>: Búfer
Buffer que corresponde al contenido del archivo que se añadirá al archivo.
<Buffer management>: Constante
Modo de gestión del búfer:
zipInMemoryGuarda el contenido de la memoria intermedia (es decir, el archivo) en el archivo.
<Path to keep>: Cadena de caracteres
Ruta o nombre del archivo asociado a la memoria intermedia que se guardará en el archivo.
<Progress>: Nombre del control o del procedimiento
Modo de gestión de la barra de progreso. Este parámetro puede corresponder a:
Si utiliza un archivo TAR, gzip o TGZ (TAR.GZ)la barra de progreso se actualiza sólo después de añadir el archivo.

Agregar un archivo usando una variable de tipo zipArchivedFile Ocultar los detalles

<Result> = <Archive>.AddFile(<File> [, <Progress>])
<Result>: Entero
  • 0 si se ha añadido el archivo,
  • un código de error (valor superior a 0) en caso contrario. Para obtener más información sobre los códigos de error, consulte las Observaciones.
<Archive>: Variable de tipo zipArchive
Nombre de una variable de tipo zipArchive correspondiente al archivo en el que debe añadirse el archivo.
<File>: Variable de tipo zipArchivedFile
Nombre de la variable zipArchivedFile que contiene información sobre el archivo a añadir (incluido su contenido).
El archivo no tiene que existir necesariamente en el disco. Sólo se tiene en cuenta la información de este parámetro.
<Progress>: Nombre del control o del procedimiento
Modo de gestión de la barra de progreso. Este parámetro puede corresponder a:
Si utiliza un archivo TAR, gzip o TGZ (TAR.GZ)la barra de progreso se actualiza sólo después de añadir el archivo.
Observaciones

Condiciones de uso

La adición de archivos en un archivo se puede realizar si:
  • El archivo comprimido existe (los archivos comprimidos pueden crearse utilizando la función <zipArchive variable>.Create).
  • El archivo es accesible en lectura/escritura.
  • El archivo es de una sola parte.
  • El tamaño del archivo es inferior a 4 GB.
Atención:
  • Archivos CAB: Los archivos deben agregarse inmediatamente después de la creación del archivo CAB. Este formato no puede utilizarse para añadir archivos a un archivo existente.
  • Archivos 7z: El archivo se comprime completamente cada vez que se llama a la función . Esta función se recomienda cuando se añade un único archivo. Si deben añadirse varios archivos al fichero, utilice <zipArchive variable>.AddFileList o <zipArchive variable>.AddDirectory.
El número máximo de archivos que se pueden incluir:
  • en un archivo WDZ: 232-1.
  • en un archivo ZIP: 65535.
  • en un archivo CAB: 65535.
Recordatorio:

    Nivel de compresión de los archivos ZIP o 7z

    Los archivos añadidos a un fichero en formato ZIP o 7z se comprimen por defecto. El nivel de compresión de los archivos añadidos a un archivo puede modificarse mediante zipCompressionLevel.

    Códigos de error

    Los códigos de error devueltos son los siguientes:
    • 1: La ruta pasada como parámetro no existe.
    • 2: Acceso denegado: El usuario no tiene permisos suficientes o el archivo está en uso.. Si el archivo que se va a agregar es un archivo de datos HFSQL, debe cerrarse mediante el siguiente código:
      HClose(NomFichier)
      Multitask() // Attend la fermeture effective du fichier
    • 3: El archivo está dañado.
    • 4: La ruta no existe en el archivo comprimido.
    • 5: No se puede escribir en el archivo comprimido.
    • 7: El archivo ya existe en el archivo comprimido.
    • 8: Un archivo comprimido no puede agregarse a sí mismo. Por ejemplo, "MiArchivo" no puede agregarse a "MiArchivo".
    La función zipMsgError devuelve el mensaje que corresponde al código de error.

    Añadir un archivo que ya se encuentra en el archivo

    Se produce un error al añadir un archivo que ya se encuentra en el archivo. Un archivo se identifica según la ruta guardada en el archivo. Por lo tanto, dos archivos con el mismo nombre y con la misma ruta relativa no pueden añadirse a un archivo.
    Por ejemplo, el campo zipNone no puede utilizarse para añadir dos archivos iguales pero procedentes de directorios diferentes.

    Índice de los archivos en el archivo comprimido

    Cuando se añade un archivo a un archivo, se le asigna automáticamente un índice. Este índice corresponde al orden en que se incluyen los archivos en el fichero. Para seleccionar un archivo en el archivo comprimido, puede utilizar:
    • el índice del elemento (nota: el índice de un elemento se devuelve mediante <zipArchive variable>.FindFile).
    • o la ruta del elemento guardado en el archivo.

    Ruta conservada (archivos en formato WDZ o ZIP)

    El array de abajo muestra las rutas guardadas en el archivo según:
    • la ruta de acceso al archivo,
    • la sección del camino a mantener.

    Componente: wd300zip.dll
    Versión mínima requerida
    • Versión 24
    Esta página también está disponible para…
    Comentarios
    Haga clic en [Agregar] para publicar un comentario

    Última modificación: 23/05/2025

    Señalar un error o enviar una sugerencia | Ayuda local