Introdução ao JFileChooser em Java
JFileChooser é uma classe de biblioteca swing em Java. É usado para selecionar um arquivo, pasta por um usuário. Ele fornece um mecanismo para escolher um arquivo. Os usuários do aplicativo podem selecionar e salvar arquivos através deste mecanismo. A seleção de arquivos ocorre em uma nova janela da janela usando o JFileChooser. showOpenDialog () da opção do prompt do método JFileChooser para o usuário selecionar o arquivo / pasta no caminho especificado. JFileChooser herda o JComponent. O JComponent também é um componente de nível básico da biblioteca swing.
Sintaxe: A declaração abaixo fornecida mostra como um JFileChooser é usado no programa.
public class JFileChooser
extends JComponent
implements Accessible
O construtor do JFileChooser em Java
A classe JFileChooser fornece um determinado parâmetro para definir o atributo para o diálogo de seleção de arquivo.
1. JFileChooser ()
Opção de prompt do construtor JFileChooser () através de uma caixa de diálogo para seleção do arquivo / pasta. Essa caixa de diálogo é aberta no caminho padrão. Os usuários podem selecionar arquivos ou pastas no caminho padrão.
Sintaxe: JFileChooser jFC = new JFileChooser();
2. JFileChooser (caminho do diretório String)
JFileChooser () com o parâmetro string como no construtor solicita uma caixa de diálogo para seleção do arquivo / pasta. Essa caixa de diálogo é aberta no caminho padrão. Os usuários podem selecionar um arquivo ou pasta no caminho especificado, conforme especificado no parâmetro construtor.
Sintaxe: JFileChooser jFC = new JFileChooser(String directoryPath);
3. JFileChooser (caminho do diretório atual do arquivo)
JFileChooser () com o parâmetro File como no construtor solicitará uma caixa de diálogo com o caminho do diretório de arquivos especificado.
Sintaxe: JFileChooser jFC = new JFileChooser(File currrentDirectoryPath);
4. JFileChooser (FileSystemView)
O construtor JFileChooser () com o parâmetro como um objeto no FileSystemView solicita um diálogo na visualização especificada do sistema de arquivos.
Sintaxe: JFileChooser jFC = new JFileChooser(FileSystemView);
5. JFileChooser (File, FileSystemView)
Construtor JFileChooser () com o parâmetro File path & FileSystemView conforme especificado no diálogo do prompt do construtor com o caminho do arquivo especificado e a visualização do sistema de arquivos.
Sintaxe: File f = new File(“C:\Users\infor\Documents”);
JFileChooser JFC = new JFileChooser(f, FileSystemView);File f = new File(“C:\Users\infor\Documents”);
JFileChooser JFC = new JFileChooser(f, FileSystemView);
Nos construtores abaixo, podemos ver como o JFileChooser solicita a opção conforme o parâmetro fornecido no construtor. Esses parâmetros fornecem flexibilidade aos programadores para restringir o usuário à seleção da visualização de arquivos e sistema de arquivos.
Vantagens do JFileChooser em Java
O uso do JFileChooser tem grandes vantagens, como:
- A declaração do JFileChooser () fora do ouvinte de eventos também pode ser utilizada dentro do ouvinte de eventos.
- Valor de retorno JFileChooser que descreve se o arquivo foi escolhido ou não.
- O parâmetro fornecido para o método a seguir do JFileChooser pode restringir os usuários facilmente para selecionar um arquivo ou pasta ou ambos.
Sintaxe:
//creating instance of the JFileChooser class
JFileChooser jFC = new JFileChooser();
jFC.setFileSelectionMode(JFileChooser.FILES_ONLY);
jFC.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
jFC.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
O JFileChooser também fornece um método para selecionar vários arquivos de uma só vez.
Sintaxe:
JFileChooser jfc = new JFileChooser();
//Enables multiple file selection
jfc.setMultiSelectionEnabled(true);
Exemplo
1. No exemplo abaixo, a classe JFileChooser é uma das classes, ou seja, usada para selecionar um arquivo no caminho especificado. algumas outras classes são importadas para o programa para manipular ações relacionadas a eventos.
Código:
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
import javax.swing.JFileChooser.*;
class fileSelectExample extends JFrame implements ActionListener (
static JLabel jL;
fileSelectExample()(
)
public static void main(String args())
(
// This will be title for the frame
JFrame jF = new JFrame("File Selector");
//given width & height will set up the modal width & height
jF.setSize(420, 250);
jF.setVisible(true);
jF.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//creating object of the current class
fileSelectExample fse = new fileSelectExample();
JButton buttonOpen = new JButton("open");
buttonOpen.addActionListener(fse);
JPanel jP = new JPanel();
jP.add(buttonOpen);
jL = new JLabel("Please select a fiile");
jP.add(jL);
jF.add(jP);
jF.show();
)
public void actionPerformed(ActionEvent ae)
(
String flag = ae.getActionCommand();
if (flag.equals("open")) (
JFileChooser jC = new JFileChooser();
int dialogVal = jC.showOpenDialog(null);
if (dialogVal == JFileChooser.APPROVE_OPTION)
(
jL.setText(jC.getSelectedFile().getAbsolutePath());
)
else(
jL.setText("Selection of the file cancelled!");
)
)
)
)
No exemplo acima, podemos ver como a classe JFileSelector está sendo usada no programa.
Na captura de tela acima, é fornecido um botão para optar pelo arquivo pelo usuário, uma vez que o usuário clica no link acima, ele solicitará a opção para a seleção do arquivo. Se várias seleções estiverem ativadas, o usuário poderá selecionar vários arquivos de uma vez. A captura de tela abaixo mostra como a caixa de diálogo é aberta para selecionar o arquivo.
Depois que o usuário selecionar o arquivo e clicar no botão "Abrir", o arquivo escolhido permanecerá selecionado, conforme indicado na captura de tela a seguir.
Na captura de tela acima, podemos ver como o arquivo é escolhido pelo usuário na janela de diálogo. O arquivo selecionado está disponível com o caminho completo e o nome do arquivo.
Além disso, se o usuário clicar no botão "Abrir" e clicar no botão Cancelar na janela de diálogo sem selecionar nenhum arquivo, a saída exibirá a mensagem "Seleção do arquivo cancelado", como mostra a captura de tela acima.
2. No exemplo abaixo, podemos ver como dois métodos showOpenDialog () e showSaveDialog () funcionam. Esses métodos são o método interno da classe JFileChooser. A opção prompt do método showOpenDialog () para selecionar um arquivo, pasta por um usuário, enquanto o método showSaveDialog () solicita uma caixa de diálogo para salvar o arquivo digitando o nome do arquivo / pasta.
Código:
import java.io.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.JFileChooser.*;
class fileSaveExample extends JFrame implements ActionListener (
static JLabel jL;
fileSaveExample()(
)
public static void main(String args())
(
// This will be title for the frame
JFrame jF = new JFrame("File Selector & Save");
//given width & height will set up the modal width & height
jF.setSize(420, 250);
jF.setVisible(true);
jF.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//creating object of the current class
fileSaveExample fse = new fileSaveExample();
JButton buttonSave = new JButton("save");
JButton buttonOpen = new JButton("open");
buttonOpen.addActionListener(fse);
buttonSave.addActionListener(fse);
JPanel jP = new JPanel();
jP.add(buttonSave);
jP.add(buttonOpen);
jL = new JLabel("Please select a fiile");
jP.add(jL);
jF.add(jP);
jF.show();
)
public void actionPerformed(ActionEvent ae)
(
String flag = ae.getActionCommand();
if (flag.equals("open")) (
JFileChooser jC = new JFileChooser();
int dialogVal = jC.showOpenDialog(null);
if (dialogVal == JFileChooser.APPROVE_OPTION)
(
jL.setText(jC.getSelectedFile().getAbsolutePath());
)
else(
jL.setText("Selection of the file cancelled!");
)
)
if (flag.equals("save")) (
JFileChooser jC = new JFileChooser();
int dialogVal = jC.showSaveDialog(null);
if (dialogVal == JFileChooser.APPROVE_OPTION)
(
jL.setText(jC.getSelectedFile().getAbsolutePath());
)
else(
jL.setText("Selection of the file cancelled!");
)
)
)
)
Na captura de tela acima, podemos ver como salvar e abrir um botão é diferenciado pela ação um do outro.
Ao clicar no botão “abrir”, o seguinte prompt de diálogo do sistema onde o usuário pode selecionar arquivo e pasta
Após a seleção do arquivo na caixa de diálogo, quando o usuário clicar no link "Abrir", o arquivo selecionado será exibido na janela anterior, conforme mostrado na captura de tela abaixo
Agora, passando para a próxima etapa, quando o usuário clicar na opção "salvar", a seguinte caixa de diálogo será aberta
Na captura de tela anexada acima, podemos ver como a caixa de diálogo diferente está sendo aberta com a opção correspondente para abrir e salvar o arquivo.
Conclusão
JfileChooser é uma das classes fornecidas pela biblioteca swing para trabalhar com a opção de seleção de arquivo. Usando o JFileChooser Os programadores podem restringir um usuário a exibir certos tipos de arquivos. O JFileChooser também fornece alguns métodos úteis para a seleção de arquivos / pastas, seleção múltipla de arquivos, limitação dos arquivos ao usuário etc. O JFileChooser também possui um método para salvar o arquivo pelo usuário.
Artigos recomendados
Este é um guia para o JFileChooser em Java. Aqui discutimos a introdução, Construtor do JFileChooser em Java e Vantagens do JFileChooser em Java, juntamente com sintaxe e exemplos. Você também pode consultar nossos outros artigos sugeridos para saber mais:
- Tipos de sites
- O que é o Selenium Web Driver?
- O que é o ASP.Net Web Services?
- Carreira em Desenvolvimento Web \
- JLabel em Java