반응형
JFileChooser
사용자가 파일을 선택할 수 있게 하는 파일 창을 생성하는 클래스입니다.
아래의 예는 JFileChooser 클래스를 이용하여 간단하게 파일 창을 open 하고 선택한 파일 경로를 출력하는 예제입니다.
import javax.swing.JFrame;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JLabel;
import javax.swing.filechooser.FileNameExtensionFilter;
public class FileDialog {
public static void main (String [] args) {
FileChooserTest fileChooser = new FileChooserTest();
}
}
class FileChooserTest extends JFrame implements ActionListener{
private JFileChooser fileComponent = new JFileChooser();
private JButton btnOpen = new JButton("열기");
private JButton btnSave = new JButton("저장");
private JLabel labelOpen = new JLabel(" ");
private JLabel labelSave = new JLabel(" ");
public FileChooserTest(){
this.init();
this.start();
this.setSize(500, 300);
this.setVisible(true);
}
public void init(){
getContentPane().setLayout(new FlowLayout());
add(btnOpen);
add(btnSave);
add(labelOpen);
add(labelSave);
}
public void start(){
btnOpen.addActionListener(this);
btnSave.addActionListener(this);
fileComponent.setFileFilter(new FileNameExtensionFilter("xlsx", "xlsx", "xls")); // 확장자 .xlsx, xls만 선택가
fileComponent.setMultiSelectionEnabled(false); // 다중 선택 불가 설정
}
public void actionPerformed(ActionEvent arg0) {
if(arg0.getSource() == btnOpen){
if(fileComponent.showOpenDialog(this) == JFileChooser.APPROVE_OPTION){
labelOpen.setText("열기 파일 경로 : " + fileComponent.getSelectedFile().toString());
}
}else if(arg0.getSource() == btnSave){
if(fileComponent.showSaveDialog(this) == JFileChooser.APPROVE_OPTION){
// 파일 저장을 원하면 아래에 파일 저장 로직을 구현하면 됨.
labelSave.setText("저장 파일 경로 : " + fileComponent.getSelectedFile().toString());
}
}
}
}
결과
열기 버튼을 누르면 파일을 선택 할 수 있는 창이 나오고 파일을 선택하면 파일 경로가 출력 창에 나타나는 것을 확인할 수 있습니다.
출처
https://blog.naver.com/cracker542/40119977325
'개발언어 > JAVA' 카테고리의 다른 글
[JAVA] 문자열 붙이는 방법 총정리(concat, StringBuilder, StringBuffer, + ) (0) | 2020.10.15 |
---|---|
[JAVA] 삼항연산자이란? 사용법 & 예제 (0) | 2020.10.06 |
[JAVA] 자바 POI 를 이용하여 엑셀 파일 읽기/ POI 라이브러리 사용법 (0) | 2020.10.03 |
[JAVA] 자바 POI 를 이용하여 엑셀 파일 만들기/ POI 라이브러리 사용법 (0) | 2020.10.02 |
[JAVA] 자바 POI 라이브러리 다운로드 방법/ 엑셀 다운로드 방법 (1) | 2020.10.01 |
댓글