AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Funciones WLanguage / Funciones estándar / Funciones de archivos
  • Códigos de error
  • Archivo extraído
  • Extracción y contraseña
  • Índice de ficheros en el archivo
  • ruta almacenada
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Extrae un archivo de un archivo comprimido y lo descomprime automáticamente en una ubicación física o en la memoria..
WINDEVWEBDEV - Código ServidorReportes y ConsultasCódigo de Usuario (UMC)Ajax
Archive is zipArchive
// Open an archive
ResOpenArchive = zipOpen(Archive, "C:\Archives\Archive.zip")
 
IF ResOpenArchive = 0 THEN
...
 // Extract a file to its initial location
 ResExtractFile = zipExtractFile(Archive, "File.txt", zipDrive)
...
END
Sintaxis

Extraer un archivo identificado por su índice Ocultar los detalles

<Result> = zipExtractFile(<Archive> , <File index> [, <File destination> [, <Progress>]])
<Result>: Entero o tampón
  • 0 si el archivo fue extraído,
  • Un código de error (valor superior a 0) en caso contrario. Para más detalles sobre estos códigos de error, consulte la página web de Observaciones.
Cuando se extrae "en memoria", corresponde a la memoria intermedia que contiene el fichero extraído.
<Archive>: Cadena de caracteres o zipArchive Variable
Nombre del archivo que se va a utilizar.
Este nombre puede corresponder a:
<File index>: Integro
Índice del fichero a extraer del archivo. zipFindFile devuelve este índice.
<File destination>: Cadena de caracteres opcional o constante
Destino ruta del archivo extraído:
  • Cadena de caracteres opcional: El archivo se extrae en la ruta especificada a la que se añade la estructura de árbol almacenada del archivo (la Drive no se almacena). Se crea la ruta especificada si no existe.
    Universal Windows 10 App El destino ruta del archivo extraído debe corresponder al directorio de trabajo de la aplicación (devuelto por fDataDir) o a uno de sus subdirectorios.
  • Constante opcional:
    zipDirectory
    (Valor predeterminado)
    Extracción en el directorio actual mientras se restaura la estructura de árbol del archivo (si estaba almacenado).
    zipDriveExtracción:
    • a la ubicación inicial del archivo si se almacenó y si la Drive existe.
    • mientras se restaura la estructura de árbol del archivo en la Drive actual si la Drive o el directorio almacenado no existen.
    • en el directorio actual si sólo se han almacenado el nombre del archivo y extension.
    LinuxiPhone/iPadIOS WidgetMac Catalyst Esta constante no está disponible. Los directorios no tienen raíz.
    AndroidWidget Android Java Esta constante y la constante zipDirectory tendrán el mismo efecto. Archivos en formato 7z: Esta constante y la constante zipDirectory tendrán el mismo efecto.
    zipInMemoryExtrae el archivo de la memoria. El contenido del archivo es devuelto directamente por la función. Puede asignarse a un Buffer Variable por ejemplo.
    Esta característica está disponible sólo para los archivos ZIP y WDZ.
    zipNoneExtracción en el directorio actual sin restaurar la estructura de árbol del archivo (si estaba almacenado).

    Universal Windows 10 App Estas constantes no se pueden utilizar.
<Progress>: Nombre de control o nombre de Procedure
Modo de gestión de la barra de progreso. Este parámetro puede corresponder a:
  • WINDEVUniversal Windows 10 AppiPhone/iPadMac Catalyst el nombre de un control Barra de progreso encontrado en una ventana. La barra de progreso mostrará el progreso de la extracción de archivos.
  • el nombre de un WLanguage Procedure. Este procedimiento tiene el siguiente formato:
    <Procedure name> (<Current file>, <Progress percentage>)

    donde:
    • corresponde al nombre del fichero actualmente procesado.
    • corresponde al porcentaje de progreso del fichero que se está extrayendo del archivo.
Atención: La barra de progreso se actualiza al final de la extracción de archivos para los siguientes tipos de archivos comprimidos:
  • TAR o TGZ (TAR.GZ),
  • RAR,
  • CAB.

Extrayendo un archivo identificado por su ruta Ocultar los detalles

<Result> = zipExtractFile(<Archive> , <File path> [, <File destination> [, <Progress>]])
<Result>: Entero o tampón
  • 0 si el archivo fue extraído,
  • Un código de error (valor superior a 0) en caso contrario. Para más detalles sobre estos códigos de error, consulte la página web de Observaciones.
Cuando se extrae "en memoria", corresponde a la memoria intermedia que contiene el fichero extraído.
<Archive>: Cadena de caracteres o zipArchive Variable
Nombre del archivo que se va a utilizar.
Este nombre puede corresponder a:
<File path>: Cadena de caracteres
ruta almacenada del archivo a extraer del archivo. Realiza una búsqueda de coincidencias exactas en la ruta del archivo en el archivo.
<File destination>: Cadena de caracteres opcional o constante
Destino ruta del archivo extraído:
  • Cadena de caracteres opcional: El archivo se extrae en la ruta especificada a la que se añade la estructura de árbol almacenada del archivo (la Drive no se almacena). Se crea la ruta especificada si no existe.
    Universal Windows 10 App El destino ruta del archivo extraído debe corresponder al directorio de trabajo de la aplicación (devuelto por fDataDir) o a uno de sus subdirectorios.
  • Constante opcional:
    zipDirectory
    (Valor predeterminado)
    Extracción en el directorio actual mientras se restaura la estructura de árbol del archivo (si estaba almacenado).
    zipDriveExtracción:
    • a la ubicación inicial del archivo si se almacenó y si la Drive existe.
    • mientras se restaura la estructura de árbol del archivo en la Drive actual si la Drive o el directorio almacenado no existen.
    • en el directorio actual si sólo se han almacenado el nombre del archivo y extension.
    LinuxiPhone/iPadIOS WidgetMac Catalyst Esta constante no está disponible. Los directorios no tienen raíz.
    AndroidWidget Android Java Esta constante y la constante zipDirectory tendrán el mismo efecto. Archivos en formato 7z: Esta constante y la constante zipDirectory tendrán el mismo efecto.
    zipInMemoryExtrae el archivo de la memoria. El contenido del archivo es devuelto directamente por la función. Puede asignarse a un Buffer Variable por ejemplo.
    Esta característica está disponible sólo para los archivos ZIP y WDZ.
    zipNoneExtracción en el directorio actual sin restaurar la estructura de árbol del archivo (si estaba almacenado).

    Universal Windows 10 App Estas constantes no se pueden utilizar.
<Progress>: Nombre de control o nombre de Procedure
Modo de gestión de la barra de progreso. Este parámetro puede corresponder a:
  • WINDEVUniversal Windows 10 AppiPhone/iPadMac Catalyst el nombre de un control Barra de progreso encontrado en una ventana. La barra de progreso mostrará el progreso de la extracción de archivos.
  • el nombre de un WLanguage Procedure. Este procedimiento tiene el siguiente formato:
    <Procedure name> (<Current file>, <Progress percentage>)

    donde:
    • corresponde al nombre del fichero actualmente procesado.
    • corresponde al porcentaje de progreso del fichero que se está extrayendo del archivo.
Atención: La barra de progreso se actualiza al final de la extracción de archivos para los siguientes tipos de archivos comprimidos:
  • TAR o TGZ (TAR.GZ),
  • RAR,
  • CAB.
Observaciones

Códigos de error

Se devuelven los siguientes códigos de error:
  • 1: La ruta pasada como parámetro no existe.
  • 2: Acceso denegado: el usuario no tiene suficientes derechos.
  • 3: El archivo está corrupto.
  • 4: La ruta no existe en el archivo.
  • 6: Los archivos de los subarchivos no están ordenados (cuando se extraen de un archivo de varias partes).
  • 21: La contraseña especificada no es correcta.
El mensaje correspondiente al código de error es devuelto por zipMsgError. Recordatorio:
  • LinuxUniversal Windows 10 AppiPhone/iPadIOS WidgetMac Catalyst Sólo están disponibles los archivos ZIP, TAR y TGZ (TAR.GZ).
  • AndroidWidget Android Java Sólo están disponibles los archivos ZIP.
  • RAR es compatible hasta la versión 4 inclusive.

Archivo extraído

El archivo extraído no se elimina del archivo comprimido. Para eliminar un fichero o todos los ficheros del archivo, utilice zipDeleteFile o zipDeleteAll.
WINDEVWEBDEV - Código ServidorReportes y ConsultasUniversal Windows 10 AppiPhone/iPadIOS WidgetMac CatalystCódigo de Usuario (UMC)Ajax

Extracción y contraseña

Si el archivo no está encriptado y si se utilizó zipPassword:
  • Archivo en formato WDZ: El archivo se sigue extrayendo.
  • Archivo en formato ZIP: Se produce un error.

Índice de ficheros en el archivo

Cuando se añade un fichero a un archivo, se le asigna automáticamente un índice. Este índice corresponde al orden de inclusión de los ficheros en el archivo. Para seleccionar un fichero en el archivo comprimido, puede utilizar:
  • el índice del elemento (el índice de un elemento es devuelto por zipFindFile).
  • la ruta almacenada del elemento.

ruta almacenada

A continuación, tabla presenta las rutas almacenadas en el archivo según:
  • el acceso ruta al fichero,
  • la sección ruta almacenada.
El directorio actual es: "C:\Temp".
zipAddFileUbicación del archivozipNonezipDirectoryzipDrive
zipAddFile("Archi",...
"Archivo.txt")
C:\Temp\Archivo.txtArchivo.txtArchivo.txtArchivo.txt
zipAddFile("Archi",...
"Data\Archivo.txt")
C:\Temp\Data\Archivo.txtArchivo.txtData\Archivo.txtData\Archivo.txt
zipAddFile("Archi",...
"D:\Data\Archivo.txt")
D:\Data\Archivo.txtArchivo.txtData\Archivo.txtD:\Data\Archivo.txt

Observación: Si se usa la constante zipDrive:
  • el formato WDZ almacena la ruta completa del archivo (incluida la letra Drive).
  • el formato ZIP no almacena la letra Drive.
  • el formato 7z almacena sólo los directorios.
AndroidWidget Android Java La constante zipDrive es equivale a la constante zipDirectory.
Universal Windows 10 App El directorio y el disco no se almacenan en el archivo ruta. Sólo se almacenan el nombre del archivo y extension.
Clasificación Lógica de negocio / UI: Lógica de negocio
Componente: wd290zip.dll
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 13/06/2023

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