Obtender o caminho do .class

1 resposta
programaker

Pessoal, é o seguinte: tenho um programinha com 3 JButtons e cada um deles tem o seu ícone, que é uma imagenzinha png.

Estes ícones estão na mesma pasta onde ficam os arquivos .java e .class do programinha; assim, eu instancio os IconImages passando diretamente o nome do arquivo.

Se eu mando executar pelo console, a partir do diretório da classe, funciona numa boa. Mas mandando executar de outro lugar, os botões ficam sem ícone. Quer dizer, ele está procurando os ícones no diretório de onde eu chamei o interpretador, e não no dretório do programa. Assim eu fico dependente de rodar a aplicação sempre diretamente a partir do diretório dela, mandando meu claspath pro saco!

Então, tem um jeito genérico de obter o diretório do arquivo .class??? Tipo, em Delphi eu faria algo assim “ExtractFilePath(Application.ExeName)”, para pegar o diretório do executável, sem me preocupar com nomes de arquivo ou de diretório, bem genérico, mas ainda não encontrei um meio de fazer o mesmo em java (até porque não tem executável, mas enfim…).

Valeu gente!

1 Resposta

cv1

Voce pode usar this.getClass().getResourceAsStream(“imagem.jpg”) para fazer isso. De uma lida no JavaDoc :wink:

Criado 16 de janeiro de 2005
Ultima resposta 16 de jan. de 2005
Respostas 1
Participantes 2