在SWT/JFace中,使用文件对话框选择文件。貌似awt和swing应该都提供文件选择对话框,不过之前都没用过。有了自带的文件对话框,就不用可以把更多的时间发在其他功能的实现上了。
下面说说具体的org.eclipse.swt.widgets.FileDialog的使用
选择单个文件
FileDialog dialog = new FileDialog(window.getShell(), SWT.OPEN);
dialog.setFilterPath("");// 设置默认的路径
dialog.setText("对话框标题");//设置对话框的标题
dialog.setFileName("");//设置默认的文件名
dialog.setFilterNames(new String[] { "文本文件 (*.txt)", "所有文件(*.*)" });//设置扩展名
dialog.setFilterExtensions(new String[] { "*.txt", "*.*" });//设置文件扩展名
String fileName = dialog.open();//
选择多个文件
FileDialog dialog = new FileDialog(shell,SWT.OPEN|SWT.MULTI);
String fileName = dialog.open();//返回最后一个选择文件的全路径
String[] fileNames = dialog.getFileNames();//返回所有选择的文件名,不包括路径
String path = dialog.getFilterPath();//返回选择的路径,这个和fileNames配合可以得到所有的文件的全路径
保存文件对话框
FileDialog dialog = new FileDialog(shell,SWT.SAVE);
String fileName = dialog.open(); //获得保存的文件名
此方法只能获得用户的路径+文件名,需要自己写方法去保存文件,如果用Java7,那么就用NIO,方便快捷。比如Files.write()方法。
来源:oschina
链接:https://my.oschina.net/u/57222/blog/687109