Java - argumeno classe File()

   
Vista:
Imágen de perfil de pauki

argumeno classe File()

Publicado por pauki (4 intervenciones) el 18/12/2014 09:30:30
Hola amigos,

mi pregunta es:
porque me funciona esto:
ImageIcon imagen= new ImageIcon("/res/imagen.png");

y en cambio no me funciona esto:
File archivo= new File("/res/arcvhivo.mid");

Entiendo que debe ser pq la ruta de archivo.mid no es absoluta, pero entonces como accedo al archivo guardado en la carpeta res??


muchas gracias de antemano!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de pauki

argumeno classe File()

Publicado por pauki (4 intervenciones) el 18/12/2014 10:30:47
He conseguido que me fucione esto:
File archivo= new File(getClass().getResource("/res/archivo.mid").getFile());

pero al compilar y crear el jar no me funciona....

alguna idea?

gracias!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

argumeno classe File()

Publicado por Tom (912 intervenciones) el 18/12/2014 10:33:13
Mira el path que tiene "res" dentro de tu jar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de pauki

argumeno classe File()

Publicado por pauki (4 intervenciones) el 18/12/2014 10:41:38
no me falla el nombre ya que a compilarlo en netbeans si que encuentra el archivo, es al construir el jar que no lo encuentra....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de pauki

argumeno classe File()

Publicado por pauki (4 intervenciones) el 18/12/2014 11:04:20
y como o hago?
creia que con el getClass y el getResources ya estaba sacando el path....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

argumeno classe File()

Publicado por Tom (912 intervenciones) el 18/12/2014 12:04:48
Cuando ejecutas tu programita desde netbeans, accede al path en el disco. Por lo que cuentas, tú necesitas acceder al fichero que está _dentro_del_jar_
Puedes listar el contenido de un fichero .jar con el comando jar (consulta sus opciones) o con algún "descompresor" que soporte el formato zip (un .jar es un .zip).

Por lo demás, este es un tema tan recurrente que hay muchísima información en la red ...

http://www.thinkplexx.com/learn/howto/java/system/java-resource-loading-explained-absolute-and-relative-names-difference-between-classloader-and-class-resource-loading
[url]http://www.coderanch.com/t/463550/java/java/determine-current-path-classloader[url]
[url]http://www.mkyong.com/java/java-read-a-file-from-resources-folder/[/url]
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar