Boa tarde,
Tenho uma classe que, por exemplo, recebe um arquivo texto, e faz algo com ele, ela ta funcionando assim “PegaArquivo(“texto.txt”)”, por que o arquivo ta dentro da pasta do projeto, daí pode ser só o nome, ou funciona assim “PegaArquivo(“C:\texto.txt”)” se tiver no C: … O que eu quero e fazer ele funcionar com um JFileChooser, só que esse filechooser vai ser chamado a aprtir de um evento de um menu, tentei montar e não deu certo.
Tenho o JmenuBar, com um Jmenu e os seus JMenuItems (abrir"para escolher o arquivo.txt", sair"fecha o programa", …).
[code] menuAbrir.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
JFileChooser fc = new JFileChooser();
fc.setFileSelectionMode(JFileChooser.FILES_ONLY);
int res = fc.showOpenDialog(null);
if(res == JFileChooser.APPROVE_OPTION) {
File arquivo = fc.getSelectedFile();
}
try {
String arq = arquivo.getCanonicalPath(); //ta dando erro aqui (cannot find variable arquivo)
PegaArquivo pa = new PegaArquivo(arq);
}catch(IOException except) { //ta dando erro aqui (exception java.io.IOExceptions is never thrown in body of corresponding try statement)
JOptionPane.showMessageDialog(null, "Erro ao ler arquivo: " +
except.getMessage(), "Abrir", JOptionPane.ERROR_MESSAGE);
}
}
});[/code]