2012-03-08 25 views
7

Mi aplicación carga regularmente archivos de gran tamaño. Independientemente de su tamaño, todos los archivos se comprimen antes de cargarse en el servidor.¿Es posible reanudar la compresión de 7zip?

Parte de esta requisitos del proyecto es reanudar muy bien después de un fallo de choque/potencia, por lo que en este momento la compresión se realiza de esta manera:

  • gran file.bin rodajas en lonchas N
  • Comprimir cada uno rebanada & cárgala

En caso de accidente, recojo del último corte.

Para optimizar la velocidad de carga, estoy buscando enviar todo el archivo (las cargas se reanudan si fallan) en lugar de enviar las divisiones una por una, así que estoy buscando comprimir todo el archivo en lugar de comprimir cada porción.

Actualmente estoy usando 7z.dll. Me pregunto si es posible, en caso de falla de energía, decir 7z a reanudar la compresión.

Sé que siempre podía aplicar mi propia rutina de compresión y poner en práctica de estas características, pero antes va ese camino me pregunto si es posible hacer eso en 7z (que ya tienen una excelente relación de compresión)

Respuesta

7

Como Hasta donde yo sé, ningún algoritmo de compresión lo admite. Es probable que tenga que volver a comprimir el archivo de origen desde el principio, descartando los bytes de salida hasta llegar a la posición de reanudación deseada, y luego puede enviar los bytes de salida restantes desde ese punto.

+1

+1 por ofrecer para recomprimir los datos para el OP;) –

+0

Oopps. Corregido :-p –

Cuestiones relacionadas