业务场景:需要代码实现数据导入、附件添加等功能时,需要弹出文件选择窗口,并获取所选取文件的路径。
用于GUI客户端前端页面ListUI或EditUI。
/**
* 文件选择器,返回文件路径,用于前端
* @param comp 父窗口
* @return 文件路径
*
*/
public static String chooser(Component comp){
String filePath = null; //文件路径
JFileChooser chooser = new JFileChooser();
chooser.showOpenDialog(comp); //文件选择窗口
if(chooser.getSelectedFile() == null){
SysUtil.abort();
}
filePath = chooser.getSelectedFile().getPath(); //文件路径
return filePath;
}
/**
* 文件选择器,校验文件格式并返回文件路径,用于前端
* @param comp 父窗口
* @param format 文件格式(e.g .xls)
* @return 文件路径
*
*/
public static String chooser(Component comp, String format){
String filePath = null; //文件路径
JFileChooser chooser = new JFileChooser();
chooser.showOpenDialog(comp); //文件选择窗口
if(chooser.getSelectedFile() == null){
SysUtil.abort();
}
String fileName = chooser.getSelectedFile().getName(); //获取文件名
if(!fileName.endsWith(format)){
MsgBox.showWarning(comp, "文件格式错误!应为" + format + "格式。");
SysUtil.abort();
}
filePath = chooser.getSelectedFile().getPath(); //文件路径
return filePath;
}