elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  [SOLUCIONADO]Extraer archivos dentro de un .jar
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [SOLUCIONADO]Extraer archivos dentro de un .jar  (Leído 12,789 veces)
cyberserver

Desconectado Desconectado

Mensajes: 162


Lo que una mente crea, otra lo destruye


Ver Perfil WWW
[SOLUCIONADO]Extraer archivos dentro de un .jar
« en: 28 Diciembre 2009, 04:09 am »

Hola amigos!!!!! quiero saber si alguien conoce la forma de extrarer los archivos dentro de un .jar!!! aaaa pero dentro de codigo java.....!!!

Creo k es con java.util.jar pero ya me canse de buscar como hacerle y no lo puedo encontrar!!! facilitenme la tarea y pasenme el instructivo!!1

De antemano gracias...

Posdata: quiero extraerlos todos a la ves


« Última modificación: 30 Julio 2010, 02:02 am por LEYER » En línea






Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.723


<3


Ver Perfil WWW
Re: Extraer archivos dentro de un .jar
« Respuesta #1 en: 28 Diciembre 2009, 04:13 am »

Citar
Lo principal es como conseguir la URL de nuestro JAR y jugar con la clase ZipFile para extraer los archivos del mismo.

Código:
myClassName = this.getClass().getName() + ".class";
URL urlJar = this.getClass().getClassLoader().getSystemResource(myClassName);

Les dejo un articulo de javaworld donde se trata este tema con mas profundidad.
Fuente: http://fetishcode.wordpress.com/2007/10/20/extraccion-de-ficheros-desde-jar/


En línea

Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
cyberserver

Desconectado Desconectado

Mensajes: 162


Lo que una mente crea, otra lo destruye


Ver Perfil WWW
Re: Extraer archivos dentro de un .jar
« Respuesta #2 en: 28 Diciembre 2009, 04:16 am »

Casualmente ya ley ese articulo pero no veo la forma de extrarer los archivos!!! aii solo guarda la URL del jar!!!

Tambien segui el vinculo y no encontre la forma. gracias
En línea






Leyer


Desconectado Desconectado

Mensajes: 786


leyer@elhacker.net


Ver Perfil WWW
Re: Extraer archivos dentro de un .jar
« Respuesta #3 en: 28 Diciembre 2009, 05:07 am »

 :-X

« Última modificación: 28 Diciembre 2009, 06:53 am por LEYER » En línea

Leyer


Desconectado Desconectado

Mensajes: 786


leyer@elhacker.net


Ver Perfil WWW
Re: Extraer archivos dentro de un .jar
« Respuesta #4 en: 28 Diciembre 2009, 06:13 am »

despues de varios intentos creo Que te lo tengo  :)

http://jleyer.wordpress.com/2010/07/18/extraer-archivos-de-un-jar-desde-java/

Código
  1. import java.io.BufferedInputStream;
  2. import java.io.FileInputStream;
  3. import java.io.FileOutputStream;
  4. import java.io.IOException;
  5.      /**
  6.        * @author leyer
  7.        */
  8. public class JarExtract {
  9. public static void extractJar(String jarFile, java.io.File directory)throws IOException{
  10. java.util.jar.JarInputStream jarInput = new java.util.jar.JarInputStream(new FileInputStream(jarFile));
  11. java.util.jar.JarEntry jarEntry=null;
  12.     while((jarEntry=jarInput.getNextJarEntry())!=null){
  13.     java.io.File file=new java.io.File(directory,jarEntry.getName());
  14.         if (jarEntry.isDirectory()){
  15.         if (!file.exists())
  16.                 file.mkdirs();
  17.         }else{ java.io.File dir = new java.io.File(file.getParent());
  18.             if (!dir.exists())dir.mkdirs();
  19.             byte[] bytes = new byte[1024];
  20.             java.io.InputStream inputStream   = new BufferedInputStream(jarInput);
  21.             FileOutputStream fileOutputStream = new FileOutputStream(file);
  22.             int read = -1;
  23.             while ((read = inputStream.read(bytes)) != -1) {
  24.            fileOutputStream.write(bytes, 0, read);
  25.        }
  26.             fileOutputStream.close();            
  27.         }
  28.     }}
  29. public static void main(String[] args) throws IOException {
  30. extractJar("Archivo.jar",new java.io.File("/home/leyer/"));
  31. }

Saludos.
« Última modificación: 30 Julio 2010, 02:01 am por LEYER » En línea

cyberserver

Desconectado Desconectado

Mensajes: 162


Lo que una mente crea, otra lo destruye


Ver Perfil WWW
Re: Extraer archivos dentro de un .jar
« Respuesta #5 en: 30 Diciembre 2009, 07:15 am »

EAEA muy chido tu codigo asi como bien estructurado!!!

Miren encontre la forma de sacar a un archivo especifico del jar. claso siempre y cuando la clases este dentro del paquete!!!

Código:
public void sacarArchivoJar(String Archivo,String RutaDescarga){

try {
            InputStream in = getClass().getResourceAsStream(Archivo);
            OutputStream out = new FileOutputStream(RutaDescarga);

            byte[] buf = new byte[1024];
            int len;
            while ((len = in.read(buf)) > 0) {
                out.write(buf, 0, len);
            }
            in.close();
            out.close();
            System.out.print("Copiado con exito");
        } catch (Exception e) {
            System.out.println(e);
        }

}
}
En línea






Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Re: Extraer archivos dentro de un .jar
« Respuesta #6 en: 31 Diciembre 2009, 14:13 pm »

Código:
public void sacarArchivoJar(String Archivo,String RutaDescarga){

try {
            InputStream in = getClass().getResourceAsStream(Archivo);
            OutputStream out = new FileOutputStream(RutaDescarga);

            byte[] buf = new byte[1024];
            int len;
            while ((len = in.read(buf)) > 0) {
                out.write(buf, 0, len);
            }
            in.close();
            out.close();
            System.out.print("Copiado con exito");
        } catch (Exception e) {
            System.out.println(e);
        }

}
}

Bro siempre igual, te lo digo siempre, ponle las tags de codigo como Linux manda:
code=java
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[SOLUCIONADO] Extraer sonidos de una DLL
Programación Visual Basic
aaronduran2 3 3,078 Último mensaje 25 Mayo 2022, 11:39 am
por Serapis
[SOLUCIONADO] Crear un jLabel dentro de un jFrame existente « 1 2 »
Java
almensilla 11 19,298 Último mensaje 8 Febrero 2011, 16:04 pm
por Nakp
(SOLUCIONADO) Busqueda dentro de un vector en C
Programación C/C++
;c1v!c 3 10,635 Último mensaje 23 Febrero 2011, 22:27 pm
por ;c1v!c
[SOLUCIONADO] Extraer cadena de conexion
Programación Visual Basic
leosanzio 7 6,037 Último mensaje 8 Marzo 2011, 23:28 pm
por raul338
[Solucionado] Extraer fecha de un campo TIMESTAMP WITHOUT TIME ZONE
PHP
Shell Root 2 7,425 Último mensaje 9 Julio 2011, 19:39 pm
por RedZer
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines