Descomprimir un solo archivo del archivo en android
Tengo un gran archivo (zip en mi caso) con tamaño ~ 100MB y con ~ 15000 archivos en él. Necesito extraer RÁPIDAMENTE un solo archivo de este archivo.
He probado el siguiente código:
- Leer archivo en android - permiso de archivo denegado
- Android: cómo saber el archivo ubicado en el servidor web se ha modificado?
- Obtener acceso al dispositivo de almacenamiento masivo USB en android
- Android: ¿Cómo puedo "correctamente" crear un archivo de lectura pública?
- Android crear archivo en almacenamiento interno con legible mundial
final String zipPath = "archive.zip"; FileInputStream fin = new FileInputStream(zipPath); in = new ZipInputStream(fin); for (ZipEntry entry = in.getNextEntry(); entry != null; entry = in.getNextEntry()) { if(entry.equals("file.name")){ //unzip this entry break; } }
Funciona pero es demasiado LENTO.
¿Es alguna otra posibilidad de encontrar el archivo necesario en el archivo? Por ejemplo, en linux es extremadamente rápido posible con comando
unzip archive.zip myfile.name
En general, necesito encontrar y descomprimir un archivo de algún archivo. Puede ser algún otro formato … Puede ser con otro formato puede ser más fácil.
- Subir archivo grande en segundo plano (el servicio se reinicia cuando la aplicación se cierra)
- Cómo comprimir archivos y carpetas en android
- Android: ¿BufferedOutputStream necesario al guardar el archivo en los datos internos?
- Android java.lang.IllegalArgumentException: no hay campo de caracteres 'exponencial' en android 2.3
- Escribir byte en Archivo en Java
- Programación de Android: ¿Por dónde empezar para crear un navegador de archivos simple?
- ¿Cómo agregar archivos a la tarjeta SD en el emulador de Android?
- Almacenamiento de datos en el almacenamiento externo
Puede utilizar la biblioteca libzip .
- Deserialización de JsonArray y JsonObject de Android
- Cómo implementar la vista de desplazamiento en el móvil con javascript?