"Unexpected end of archive"

Este error casi nunca significa que el archivo esté "dañado" de alguna forma misteriosa. Significa que el archivo es corto — los últimos bytes nunca llegaron. Todo lo almacenado antes del corte suele seguir siendo legible, y recuperarlo no exige entregar el archivo a un servidor.

Tu archivo nunca sale de tu dispositivo — la reparación ocurre en tu navegador. 0 bytes subidos.

Your data is the big block — usually intact. What breaks is the small index. Repair rebuilds it.

Suelta un archivo aquí o exploraToca para elegir un archivo

ZIP · Office · PDF · vídeo · JPG · PNG · RAR/7z · SQLite — reparados aquí mismo, en tu navegador. No se sube nada

0 bytes subidosGratis: 3 reparaciones/día — hasta 500 MB de vídeo, 100 MB de documentos y archivos, 50 MB de fotos. Descarga gratuita. Una reparación 5,90 €. Sin cuenta.

Repáralo ahora

  1. Suelta el archivo
  2. La reparación ocurre en local
  3. Descarga el resultado

WinRAR, 7-Zip y el comando unzip de la línea de comandos generan todos alguna variante de "Unexpected end of archive" por la misma razón de fondo: leen el archivo esperando más bytes de los que realmente hay. La descarga se atascó, una copia desde una memoria USB se interrumpió antes de tiempo, o una sincronización en la nube se detuvo a medias. Suelta el archivo arriba y la herramienta inspecciona su estructura real en tu navegador — localiza las entradas que se escribieron por completo antes del punto de truncamiento y extrae esas, en lugar de rechazar todo el archivo porque le falta la cola.

Qué significa el error a nivel del formato de archivo

Un archivo ZIP no es un único bloque continuo — es una serie de entradas de archivo locales seguidas de un directorio central justo al final. Cada entrada empieza con la firma PK\x03\x04, lleva su propio nombre, método de compresión y tamaño, y a continuación los datos comprimidos (deflate). Después de la última entrada viene el directorio central (registros PK\x01\x02), y el archivo termina con el registro End Of Central Directory, PK\x05\x06. Ese EOCD es el índice: le dice al extractor cuántos archivos hay y dónde empieza cada uno.

Aquí está el truco. El índice vive al final del todo del archivo. Cuando una descarga o copia se interrumpe, la cola es justo lo que falta — así que el extractor busca donde debería estar el EOCD, encuentra datos (o nada) en lugar de la firma PK\x05\x06, e informa "Unexpected end of archive." El archivo no está revuelto; simplemente le falta su índice, y posiblemente el último archivo o dos.

RAR y 7z fallan de la misma manera por la misma razón. Un RAR mantiene cabeceras de bloque y, al final, un marcador de fin de archivo; un .7z mantiene su base de datos de cabeceras en la cola del archivo y normalmente comprime muchos archivos juntos en un único flujo sólido. En todos los casos, los metadatos que la herramienta necesita primero son los metadatos que un truncamiento destruye primero.

Qué sale aún, y cómo funciona el rescate

Como cada entrada ZIP se describe a sí misma, todo el directorio central es redundante para la extracción — es un índice, no los datos. La herramienta ignora el EOCD que falta y en su lugar recorre el archivo hacia delante desde el principio, capturando cada cabecera local PK\x03\x04 que encuentra y descomprimiendo el flujo deflate que le sigue mientras los bytes aguanten. Cualquier archivo que se escribiera por completo antes del corte vuelve intacto; el único archivo que quedó a caballo del punto de truncamiento puede volver parcial o no volver en absoluto. Esto se ejecuta como TypeScript puro en tu pestaña — sin instalar ninguna utilidad de archivos, sin enviar nada a ningún sitio.

RAR y 7z están más limitados pero no son un caso perdido. En un RAR, los archivos almacenados antes del truncamiento siguen decodificándose, y un RAR creado con un registro de recuperación se repara muchísimo mejor porque ese registro está diseñado para reconstruir los bloques que faltan. Un .7z es el caso frágil: sin registro de recuperación y con compresión sólida encadenando los archivos entre sí, perder la cola puede romper la descompresión de todo lo que viene después del último bloque completo. La herramienta rescata lo que permiten los bloques supervivientes y es honesta cuando un flujo sólido no se puede continuar.

El límite honesto: los bytes posteriores al corte se han perdido

Ningún software puede recuperar datos que nunca estuvieron en el archivo. Si la descarga se detuvo al 60 %, el último 40 % de los datos comprimidos no existe en tu disco, y nada — ni esta herramienta, ni la propia reparación de WinRAR, ni una suite de recuperación de pago — puede inventarlo de nuevo. La solución para eso es volver a descargar o a copiar el archivo desde el origen para tener los bytes completos.

Lo que podemos hacer de forma fiable es evitar que un archivo que llegó a medias sea una pérdida total. Si nueve de diez archivos llegaron antes de que se cayera la conexión, no hay razón para perder los nueve mientras se persigue el décimo. Y como toda la operación ocurre en tu navegador, un archivo que podría contener registros financieros, código fuente o documentos personales nunca se copia a un servidor desconocido solo para echar un vistazo dentro — puedes observar la pestaña Red y confirmar que no sale ni un byte.

Qué puede y qué no puede reparar

Puede reparar

  • Un ZIP que perdió su directorio central / EOCD por una descarga truncada — las entradas anteriores al corte se extraen recorriendo las cabeceras locales
  • Archivos individuales dentro de un ZIP descargado parcialmente que se escribieron por completo antes de que se cayera la conexión
  • Archivos RAR en los que los archivos almacenados antes del punto de truncamiento aún se decodifican
  • Archivos RAR que llevan un registro de recuperación (estos se reparan bastante mejor)
  • Archivos 7z hasta el último bloque de compresión completo que sobrevivió

No puede reparar

  • Cualquier archivo cuyos datos comprimidos estuvieran situados después del punto de truncamiento — esos bytes no están en tu disco
  • Un flujo sólido 7z más allá de su último bloque intacto (los archivos posteriores de la cadena no se pueden descomprimir)
  • Archivos que además están cifrados/protegidos con contraseña cuando no se proporciona la contraseña
  • Una descarga tan corta que solo llegó un fragmento de la primera entrada

Si una reparación falla, te decimos por qué (datos que faltan frente a estructura dañada), y nunca se te cobra por una reparación fallida.

Preguntas frecuentes

¿"Unexpected end of archive" significa que todo el archivo está dañado?

Normalmente no. Casi siempre significa que el archivo está truncado — más corto de lo que debería porque una descarga o copia se interrumpió. Los datos escritos antes del corte suelen estar bien; solo se ven afectados el índice del final y los archivos que quedaron pasado el corte.

¿Puedo sacar algunos de los archivos si el resto faltan?

Sí, ese es justamente el propósito del rescate. En un ZIP, la herramienta recorre las cabeceras de archivo locales desde el principio y extrae cada entrada que se escribió por completo, de modo que un archivo descargado a medias aún suelta sus archivos intactos en lugar de fallar por completo.

¿Por qué 7-Zip repara mi RAR pero no mi .7z?

Los archivos RAR se pueden crear con un registro de recuperación pensado exactamente para esto, y los bloques RAR se decodifican de forma independiente. Un .7z suele usar compresión sólida que encadena los archivos en un único flujo con su tabla de cabeceras justo al final — perder la cola puede romper todo lo que viene después del último bloque completo.

El archivo es confidencial. ¿Se sube para comprobarlo?

No. El archivo se lee desde tu disco y se procesa en la pestaña de tu navegador; no se transmite nada. Puedes abrir la pestaña Red y confirmar que no sale ni un byte del archivo de tu equipo — útil cuando el ZIP contiene documentos que preferirías no copiar al servidor de un desconocido.

Relacionado: Repara un archivo ZIP · "Compressed folder is invalid" · Verifica la promesa de cero subidas