转载别人的文章,为Java中的文件选择框JFileChooser做个简单的笔记。
通常我们用JFileChooser来辅助完成文件的读写。
使用JFileChooser的步骤如下:
- 1.声明一个JFileChooser对象
- 2.为其添加文件过滤器,当然这个不是必须的。
- 3.调用了其showDialog方法后返回一个整型值,根据这个值可以判断用户的选择,如果用户没有选择“取消”,则接下来可以根据JFileChooser获取所选文件的基本信息,例如路径、文件名等等。
以上完成了基本设置,下面可以用这个来完成我们的要求JFileChooser fileChooser = new JFileChooser(); //添加过滤的两种方法: FileNameExtensionFilter ff = new FileNameExtensionFilter( null, "txt"); fileChooser.setFileFilter(ff); //法二: fileChooser.addChoosableFileFilter(new javax.swing.filechooser.FileFilter() { @Override public String getDescription() { return "*.txt"; } @Override public boolean accept(File arg0) { return arg0.getName().endsWith(".txt"); } } );
int option = fileChooser.showOpenDialog(null); if(option == JFileChooser.APPROVE_OPTION){ //获取基本信息 System.out.println("路径:"+fileChooser.getSelectedFile().getPath()); System.out.println("绝对路径:"+fileChooser.getSelectedFile().getAbsolutePath()); System.out.println("文件名称:"+fileChooser.getSelectedFile().getName()); String path = fileChooser.getSelectedFile().getAbsolutePath(); //读入 FileReader fReader = new FileReader(path); BufferedReader bReader = new BufferedReader(fReader); ArrayList<String> data = new ArrayList<String>(); String row = null; while((row = bReader.readLine()) !=null){ row = row.replaceAll("\\s*","");//去掉空格 data.add(row); } }
转自http://miman2008.iteye.com/blog/816035。
补充,注意导入头文件:
import javax.swing.JFileChooser;
import javax.swing.filechooser.FileNameExtensionFilter;