2012-05-16 2 views
2

Google 검색 중 일부를 수행 한 후이 메일이 많이 표시되지 않습니다. 힘에 약간의 "일반적인"방법은파일을 이미 강제로 java 파일 선택기를 사용했습니다.

나는 JFileChooser with confirmation dialog 같은 http://coding.derkeiler.com/Archive/Java/comp.lang.java.help/2004-01/0302.html 또는 같은 것을 추가 할 수 있습니다 "이미"하지만 표준적인 방법이있는 파일을 선택하는 사용자가 있습니까?

감사합니다.

답변

2

"열기"동작을 원하는 것처럼 들리지만 "열기"대신 "저장"이라고 표시된 확인 버튼을 누릅니다.

이 방법을 통해이 작업을 수행 할 수 있습니다 http://docs.oracle.com/javase/6/docs/api/javax/swing/JFileChooser.html#showDialog%28java.awt.Component,%20java.lang.String%29

패스 "저장"에 approveButtonText 인수에 대해.

+0

는 문자열처럼 힌트를 추가 할 수 있도록 할 것 setDialogTitle 방법을 사용하여 Eng.Fouad의 답변이지만 위에 링크 된 showDialog 메소드를 사용하여 저장 버튼 레이블을 "저장"으로 유지하십시오. http://docs.oracle.com/javase/6/docs/api/javax/swing/JFileChooser.html#setDialogTitle%28java.lang.String%29 –

2

먼저 당신은 당신의 더 나은 옵션이 choser.showOpenDialog 또는 showSaveDialog

이 저장 대화 상자가 그것이 존재하지 않는 파일이 될 수 지정된 경로에있는 이름을 선택하게되지만, 개방은 항상 받아

이 선택되어 있는지 확인합니다 file .. 파일이 존재하는지 확인하기 위해 file.exists()를 안전하게 추가 할 수 있습니다. 또한 등등의 버튼 .. 대화 .. 텍스트를 변경할 수 있습니다

JFileChooser chooser = new JFileChooser(); 
    chooser.setApproveButtonText("Save"); 
    int result = chooser.showOpenDialog(null); 
    if(result == JFileChooser.APPROVE_OPTION){ 
     File selection = chooser.getSelectedFile(); 
     //verify if file exists 
     if(selection.exists()){ 
      //you can continue the code here or call the next method or just use !exists and behavior for wrong file 
     }else{ 
      //System.exit(0), show alert.. etc 
     } 
    } 
2

이처럼 간단 :

JFileChooser fc = new JFileChooser(); 
while(true) 
{ 
    if(fc.showSaveDialog(null) == JFileChooser.APPROVE_OPTION && 
     !fc.getSelectedFile().exists()) 
     JOptionPane.showMessageDialog(null, "You must select an existing file!"); 
    else break; 
} 
관련 문제