您的位置:首页 > 其它

swing编写的文件选择器,并且过滤可选文件的类型

2018-01-24 15:44 417 查看
用swing编写的文件选择器,查看文件。最主要熟练使用几个函数的使用。1。JFileChooser创建文件选择对话框。用法:[align=left]
JFileChooser()
 
          构造一个指向用户默认目录的 
JFileChooser
。[/align]
[align=left]JFileChooser(File currentDirectory)
          使用给定的 
File
 作为路径来构造一个 
JFileChooser
。[/align]
2。用showOpenDialog来创建弹出一个"Open File"文件选择器对话框,并且参数可以为空或当前对象,在指定为当前对象时要记得加.this。3。setFileSelectionMode用来设置打开的是文件还是文件夹。参数为FILES_AND_DIRECTORIES(打开为文件和文件夹),FILES_ONLY(只能打开文件)等等。4。setMultiSelectionEnabled设置文件是否可以多选,参数为true 或 false。5。当要过滤可选的文件类型时,用FileNameExtensionFilter函数。6。getSelectedFile()返回选中的文件
 package File;import java.awt.BorderLayout;
import java.awt.EventQueue;importjavax.swing.JFileCh
a69f
ooser;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.filechooser.FileNameExtensionFilter;
import javax.swing.JButton;import java.awt.FlowLayout;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.io.File;public class TextOpen extends JFrame{ private JPanelcontentPane;
 private JFileChooser chooser;
 
 public static void main(String[] args) {
  EventQueue.invokeLater(newRunnable() {
   public voidrun() {
    try{
     TextOpenframe = new TextOpen();
     frame.setVisible(true);
    }catch (Exception e) {
     e.printStackTrace();
    }
   }
  });
 } 
 public TextOpen() {
  chooser = newJFileChooser();
  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  setBounds(100, 100, 450,300);
  contentPane = newJPanel();
  contentPane.setBorder(newEmptyBorder(5, 5, 5, 5));
  setContentPane(contentPane);
  contentPane.setLayout(newFlowLayout(FlowLayout.CENTER, 5, 5));
  
  JButton btnOpenDir = newJButton("open dir");
  btnOpenDir.addMouseListener(newMouseAdapter() {
   @Override
   public voidmouseClicked(MouseEvent e) {
    chooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);//创建文件选择器,可以打开文件和文件夹
    chooser.setMultiSelectionEnabled(true);//可以使得文件多选
    intvalue =chooser.showOpenDialog(TextOpen.this);//打开文件的对话框,设置为当前的窗体
    if(value== JFileChooser.APPROVE_OPTION)//APPROVE_OPTION表示文件正常打开了
    {
     Filefile[] =chooser.getSelectedFiles();//获得选中的文件,返回数组
     for(int i = 0; i < file.length; i++) {
      System.out.println(file[i].getAbsolutePath());//输出绝对路径
     }
    }
   }
  });
  contentPane.add(btnOpenDir);
  
  JButton btnOpenFile = newJButton("open file");
  btnOpenFile.addMouseListener(newMouseAdapter() {
   @Override
   public voidmouseClicked(MouseEvent e) {
    FileNameExtensionFilterfilter = new FileNameExtensionFilter("Allowed File","txt","jar","doc");//过滤可以选择的文件
    chooser.setFileFilter(filter);
    
    intvalue = chooser.showOpenDialog(TextOpen.this);//打开文件的对话框
    if(value== JFileChooser.APPROVE_OPTION)
    {
     Filefile = chooser.getSelectedFile();//获得选中的文件,输出
     System.out.println(file.getAbsolutePath());//输出绝对路径
    }
   }
  });
  contentPane.add(btnOpenFile);
 }} 
 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐