2009-03-19 2 views
3

저는 Swing을 처음 사용하고 Swing 코드에 다운로드 파일 기능을 구현하고자합니다. 사용자가 특정 파일을 저장하거나 열 수 있습니다.JAVA Swing에서 다운로드 파일 옵션을 어떻게 가질 수 있습니까?

JFileChooser.showOpenDialog와 showSaveDialog를 살펴 봤지만 파일 시스템에서 파일을 선택할 수있는 옵션을 제공하므로 사용하지 않으려합니다.

희망 사항은 분명합니다. 이걸 도와주세요.

답변

5

필터를 사용하고 싶습니다. 예 :

JFileChooser chooser = new JFileChooser(); 
    // Note: source for ExampleFileFilter can be found in FileChooserDemo, 
    // under the demo/jfc directory in the Java 2 SDK, Standard Edition. 
    ExampleFileFilter filter = new ExampleFileFilter(); 
    filter.addExtension("jpg"); 
    filter.setDescription("JPG & GIF Images"); 
    chooser.setFileFilter(filter); 
    int returnVal = chooser.showSaveDialog(parent); 
    if(returnVal == JFileChooser.APPROVE_OPTION) { 
     System.out.println("You chose to open this file: " + 
      chooser.getSelectedFile().getName()); 
    } 

여기에는 JPG 및 GIF 파일 만 표시됩니다. 예 here

편집에서 도난 : 당신이 ExampleFileFilter는 달마 티아 클래스를 FileFilter

편집을 구현 그냥 알다시피 : 파일의 이름을 알고 있기 때문에, 당신은 열어라는 버튼이 있고 Runtime .getRuntime를 사용할 수 있습니다. exec ('열려는 파일 .doc')를 열어 적절한 응용 프로그램에서 열어야합니다.

절약을 위해 파일을 저장할 위치를 묻는 메시지가 계속 나타납니다. JFileChooser. 필자는 여전히 필터를 사용하고 필요한 경우 파일 확장명이 동적으로 무엇인지 결정한 다음 수행합니다.

JFileChooser chooser = new JFileChooser(); 
    // Note: source for ExampleFileFilter can be found in FileChooserDemo, 
    // under the demo/jfc directory in the Java 2 SDK, Standard Edition. 

    String selectedFile = "The suggested save name."; 
    chooser.setSelectedFile(selectedFile); 

    ExampleFileFilter filter = new ExampleFileFilter(); 
    String extension = "Do something to find your extension"; 
    filter.addExtension(extension); 
    filter.setDescription("JPG & GIF Images"); 
    chooser.setFileFilter(filter); 
    int returnVal = chooser.showSaveDialog(parent); 
    if(returnVal == JFileChooser.APPROVE_OPTION) { 
     System.out.println("You chose to open this file: " + 
      chooser.getSelectedFile().getName()); 
     //then write your code to write to disk 
    } 

희망이 있습니다.

+0

안녕하세요, openign 파일에 대한 제한 사항을 넣고 싶지 않지만 사용자가 특정 파일을 열거 나 저장할 수있는 대화 상자를 갖고 싶습니다. 내 시스템에서 생성 된 보고서를 말하십시오. 지금 취소하십시오. – NewToJava

+0

당신은 당신이 이미 그 이름을 알고있는 특정 파일을 열 것인지를 묻고 싶습니까? –

+0

예 u r absolutly rit..wat 내가 원하는 것은 우리가 gmail에 atatchment를 가지고 있다면, 다운로드를 확인한 다음 저장 또는 열기를 보여주는 방식입니다. – NewToJava

1

파일 선택기에 필터를 추가 할 수 있습니다. 자신이 허용 한 파일 만 받아들이는 자신 만의 파일을 쉽게 구현할 수 있습니다.

파일을 선택한 후에는 파일 저장/읽기를 직접 구현해야합니다. 데스크톱 응용 프로그램에는 다운로드/업로드 같은 것이 없습니다.

+0

까지 내가 필터 wud 그냥 일부 파일 형식을 제한하는 데 도움이 이해합니다. 내가 원하는 것은 사용자가 내 도구에서 생성 된 특정 파일을 열어보고 음미할 수있는 대화 상자입니다. 보고서 또는 smthing을 말합니다. – NewToJava

+0

Thnaks Marko .. 이제 어떻게 할 수 있을지 생각해 봤습니다. ur 입력에 대해 감사드립니다. :) – NewToJava

+0

upvote는 감사합니다. – Marko

관련 문제