elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
27 Mayo 2012, 23:46  


Tema destacado: Deseas probar algunas mejoras a la interfaz del foro? Prueba cake! acerca de

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java (Moderadores: Debci, Leyer)
| | | |-+  [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 3,952 veces)
cyberserver

Desconectado Desconectado

Mensajes: 157


Lo que una mente crea, otra lo destruye


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

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 por LEYER » En línea






Shell Root


Desconectado Desconectado

Mensajes: 2.456


Alex Jurado


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

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

---
cyberserver

Desconectado Desconectado

Mensajes: 157


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 »

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
Moderador
***
Desconectado Desconectado

Mensajes: 772


[]


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

 :-X

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

Leyer
Moderador
***
Desconectado Desconectado

Mensajes: 772


[]


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

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
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
     /**
      * @author leyer
      */

public class JarExtract {
public static void extractJar(String jarFile, java.io.File directory)throws IOException{
java.util.jar.JarInputStream jarInput = new java.util.jar.JarInputStream(new FileInputStream(jarFile));
java.util.jar.JarEntry jarEntry=null;
    while((jarEntry=jarInput.getNextJarEntry())!=null){
    java.io.File file=new java.io.File(directory,jarEntry.getName());
        if (jarEntry.isDirectory()){
        if (!file.exists())
                file.mkdirs();
        }else{ java.io.File dir = new java.io.File(file.getParent());
            if (!dir.exists())dir.mkdirs();
            byte[] bytes = new byte[1024];
            java.io.InputStream inputStream   = new BufferedInputStream(jarInput);
            FileOutputStream fileOutputStream = new FileOutputStream(file);
            int read = -1;
            while ((read = inputStream.read(bytes)) != -1) {
           fileOutputStream.write(bytes, 0, read);
       }
            fileOutputStream.close();            
        }
    }}
public static void main(String[] args) throws IOException {
extractJar("Archivo.jar",new java.io.File("/home/leyer/"));
}

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

cyberserver

Desconectado Desconectado

Mensajes: 157


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 »

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
Moderador
***
Desconectado Desconectado

Mensajes: 1.945


Actualizate o muere!


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

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:  

Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines