Java 操作文件选择器、保存或打开文件操作

直接用main调用两个方法即可测试

import java.io.File;
import javax.swing.JFileChooser;
import javax.swing.filechooser.FileNameExtensionFilter;
public class FileSaveAndOpen {
//sql导出路径
public String save() {
//显示所查找文件为.sql的所有文件
FileNameExtensionFilter filter=new FileNameExtensionFilter(“*.sql”,”sql”);
JFileChooser fc=new JFileChooser();

    //设置一个文件筛选器
    fc.setFileFilter(filter);  
    //设置不允许多选
    fc.setMultiSelectionEnabled(false); 

    /*使用showOpenDialog()方法,显示出打开选择文件的窗口,当选择了某个文件后,或者关闭此窗口那么都会返回一个
    整型数值,如果返回的是0,代表已经选择了某个文件。如果返回1代表选择了取消按钮或者直接关闭了窗口*/
    int result=fc.showSaveDialog(null); 

    //JFileChooser.APPROVE_OPTION是个整型常量,代表0。就是说当返回0的值我们才执行相关操作,否则什么也不做。
    if (result==JFileChooser.APPROVE_OPTION) {
        //获取当前选择的文件路径
        File file=fc.getSelectedFile();
        //判断这个文件是否以.sql结尾、如果不是给他加上.sql
        if (!file.getPath().endsWith(".sql")) {  
            file=new File(file.getPath()+".sql");  
        }

        //返回文件路径
        return file.getPath(); 
    }
    return null;
}

//选择sql文件导入
public String open() {
    FileNameExtensionFilter filter=new FileNameExtensionFilter("*.sql","sql");

    JFileChooser file=new JFileChooser();
    //设置一个文件筛选器
    file.setFileFilter(filter);

    //下面这句是去掉显示所有文件这个过滤器。
    file.setAcceptAllFileFilterUsed(false);

    /*使用showOpenDialog()方法,显示出打开选择文件的窗口,当选择了某个文件后,或者关闭此窗口那么都会返回一个
    整型数值,如果返回的是0,代表已经选择了某个文件。如果返回1代表选择了取消按钮或者直接关闭了窗口*/
    int result = file.showOpenDialog(null);

    //JFileChooser.APPROVE_OPTION是个整型常量,代表0。就是说当返回0的值我们才执行相关操作,否则什么也不做。
    if(result == JFileChooser.APPROVE_OPTION){
       //获得你选择的文件绝对路径。并输出。当然,我们获得这个路径后还可以做很多的事。
       String path = file.getSelectedFile().getAbsolutePath();

       return path;
    }

    return null;
}

}

你可能感兴趣的:(Java 操作文件选择器、保存或打开文件操作)