Leitura de arquivos de imagem

4 respostas
fmsm

Boa noite galéra, por favor alguém poderia me ajudar estou tentando ler um arquivo de imagem e mostra - la em um pequeno painel mas só aparece o caminho do arquivo, alguém sabe me explicar como faço corretamente?

O código segue abaixop

ublic void actionPerformed(ActionEvent e) {

if(e.getSource()== procurar){
FileDialog fdAbrir = new FileDialog(new JFrame(),"Abrir arquivo",FileDialog.LOAD);
		
		
		try 
		{
			fdAbrir.setVisible(true);
			if (fdAbrir.getFile()== null) return;
			nome_do_arquivo = fdAbrir.getDirectory()+fdAbrir.getFile();
			FileReader in = new FileReader(nome_do_arquivo);
			
			ImageIcon iconfoto = new ImageIcon('"'+nome_do_arquivo+'"');   
			foto.add(BorderLayout.CENTER,new JLabel(nome_do_arquivo));
			this.updateUI();
			in.close();
			
		} 
		catch(IOException erro) {}
		
		
	}
	
	
	
	
	
}

Atenciosamente
Fernando

4 Respostas

V

Olha cara neste trecho:

ImageIcon iconfoto = new ImageIcon('"'+nome_do_arquivo+'"');

Você não deve usar estas aspas , até mesmo porque imagino que esteja
tentando usar o construtor.
ImageIcon(String filename)

e esse :
FileReader in = new FileReader(nome_do_arquivo);
Não está sendo usado em parte alguma , e como ele não vale fora do try pode-se tira-lo.

então ficaria assim:

try
{
fdAbrir.setVisible(true);
if (fdAbrir.getFile()== null) return;
nome_do_arquivo = fdAbrir.getDirectory()+java.io.File.pathSeparator+fdAbrir.getFile();

ImageIcon iconfoto = new ImageIcon(nome_do_arquivo);
foto.add(BorderLayout.CENTER,new JLabel(nome_do_arquivo));
this.updateUI();

}

não testei ve ai se fuciona.

fmsm

Boa tarde brother valeu pelas dicas e desculpa por só responder agora.
Então testei dessa forma também mas continua aparecendo o caminho do arquivo e não a imagem, sabe me disser se posso fazer de outra forma?

V

Kra eu tava com um pouco de pressa então não fiz um negocio mais o menos aqui , ta em forma de input a janela.

import javax.swing.JFileChooser;
import javax.swing.JLabel;
import javax.swing.JOptionPane;

import java.net.MalformedURLException;

import java.io.File;

public class imageload {

public imageload(){}
	
private File path()
{
	JFileChooser fc = new JFileChooser();
	fc.showOpenDialog(null);
	File file = fc.getSelectedFile();
	return file;
}

	public static void main(String[] args) 
	{
		imageload local = new imageload();
		JLabel jLabel = new JLabel();
		try{jLabel.setIcon(new javax.swing.ImageIcon(local.path().toURL()));}
                catch(MalformedURLException ex){System.err.println("Caminho inválido\n:"+ex);}
		JOptionPane.showInputDialog(jLabel);
	}

}
fmsm

Valeu brother funcionou perfeitamente !

abraço…

Criado 1 de março de 2008
Ultima resposta 3 de mar. de 2008
Respostas 4
Participantes 2