Olá a todos. Por questão de curiosidade, estava mexendo com o JFileChooser, conseguindo visualizar a janela de escolha de arquivo e tudo mais, mas quando pedia para abrir um arquivo de texto (.doc, .txt) nada acontecia. Gostaria que alguém me ajudasse sobre como resolver esse problema.
PS - Como não estou em casa, posto o código pela parte da noite.
Nada acontecia o quê???
Vc não conseguia selecionar o arquivo, não conseguia exibir dentro da sua aplicação?(Por exemplo um JTextArea dentro do seu JFrame)???
Posta o código e o quê vc quer que ele faça.(Não esqueça de usar as tags code)
FabricioPJ
Opa, desculpa pela falta de informações. Tenho um arquivo na area de trabalho com a extensão .doc, e quero que seu conteúdo seja visualizado em um TextArea em um Frame, como você disse, só que isso não acontece. A janela JFileChooser aparece corretamente, dai peço para abrir o arquivo desejado, mas quando clico em “Open”, o JFileChooser se fecha e nada mais acontece.
Mas para falar a verdade, eu não mandei este arquivo que desejo visualizar, abrir no meu TextArea, porque eu não sei bem como fazer isso.
Ainda não estou em casa, pois tive problemas no trabalho e não sei que horas retornarei, por isso não postei o código. Desculpem.
Mas obrigado pela atenção.
davidbuzatto
Amigo, você está fazendo confusão.
Não é pq vc clico no open que o file chooser vai saber q ele deve abrir o arquivo com o aplicativo padrão ou então carregar o conteúdo do mesmo em uma text area.
Para obter o arquivo selecionado, primeiramente vc precisa utilizar o método getSelectedFile, q vai retornar um File.
Agora com o arquivo, vc pode carregá-lo e fazer o que quiser com o mesmo. Só atente a uma coisa: um arquivo .doc não é texto puro, ele tem as “tags” de formatação do word e mais um monte de coisa. Se vc quiser exibir texto puro a partir de um arquivo vai ser mais fácil.
Até mais!
davidbuzatto
Para obter o arquivo seria mais ou menos assim:
JFileChooserfc=newJFileChooser();Filearquivo=null;if(fc.showOpenDialog()==JFileChooser.APPROVE_OPTION)arquivo=fc.getSelectedFile();// para obter um array de arquivos vc pode usar o método getSelectedFiles()// se o arquivo foi carregado corretamenteif(arquivo!=null){// faz o que quiser com o arquivo...}
Até mais!
FabricioPJ
O código que estou tentando udar é este:
JFileChooser fc = new JFileChooser();
fc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
int result = fc.showOpenDialog(this);
if(result == JFileChooser.CANCEL_OPTION)
System.exit(1);
File arquivo = fc.getSelectedFile();
campo.setText(fc.getSelectedFile());
Só que está dando um erro com a última linha, mas não sei porque. Esse “campo” é o TextArea no qual quero que o arquivo .doc ou .txt seja mostrado.
Este código que digitei acima é baseado no Deitel, livro que estou lendo. Só que lá não explica como mostrar o arquivo em um TextArea.
Grato pela atenção de todos.
Marky.Vasconcelos
fc.getSelectedFile();
te retorna um File, o erro que da provavelmente é porque não pode dar cast certo?
procura na API da classe File um metodo que te retorna o caminho do arquivo
H
heitorflorido
se você tá querendo colocar o caminho do arquivo no TextArea, é só usar o método
arquivo.getPath();
mas se você quer o conteudo do arquivo no TextArea, vc pode procurar na API algum método pra fazer isso ou fazer na mão msm… é bem simples…
Opa... demorei para responder pois estive ocupado com outros projetos, mas agora que sobrou um tempinho, voltei a minha sina do JFileChooser. O seguinte código me retornou algo, que foi o caminho do arquivo:
JFileChooser fc = new JFileChooser();
fc.setFileSelectionMode(JFileChooser.FILES_ONLY);
int resultado = fc.showOpenDialog(this);
if(resultado == JFileChooser.CANCEL_OPTION)
System.exit(1);
File aux;
File fileName = fc.getSelectedFile();
aux = fileName;
JOptionPane.showMessageDialog(null, aux);