Java-记事本程序、文件选择对话框(JFileChooser)

来源:互联网 发布:武警军用品淘宝店铺 编辑:程序博客网 时间:2024/05/22 06:06

基本的GUI基础和IO基础
核心代码

JFileChooser jfc = new JFileChooser();jfc.setDialogTitle("另存为...");// jfc.showOpenDialog(null); // 显示打开文件对话框jfc.showSaveDialog(null); // 显示保存文件对话框jfc.setVisible(true);String filename = jfc.getSelectedFile().getAbsolutePath(); // 获取选择的文件的绝对路径

1 打开文件
2 保存文件
3 文件选择对话框

public class Base extends JFrame implements ActionListener{private static final long serialVersionUID = -1131829311416485951L;JTextArea jta = null;JMenuBar jmb = null;JMenu jm1 = null;JMenuItem jmi1 = null, jmi2 = null;public Base() {    jta = new JTextArea();    jmb = new JMenuBar();    jm1 = new JMenu("文件");    jm1.setMnemonic('F');    jmi1 = new JMenuItem("打开");    jmi2 = new JMenuItem("保存");    jmi1.addActionListener(this);    jmi1.setActionCommand("open");    jmi2.addActionListener(this);    jmi2.setActionCommand("save");    this.setJMenuBar(jmb);    jmb.add(jm1);    jm1.add(jmi1);    jm1.addSeparator();    jm1.add(jmi2);    this.add(jta);    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);    this.setSize(400, 300);    this.setVisible(true);}//------------------------------------------------------public void actionPerformed(ActionEvent e) {        if(e.getActionCommand().equals("open")) {            // 文件选择窗口            JFileChooser jfc1 = new JFileChooser();            jfc1.setDialogTitle("请选择文件...");            jfc1.showOpenDialog(null);            jfc1.setVisible(true);            // 得到用户选择的文件路径            String filename = jfc1.getSelectedFile().getAbsolutePath();//          System.out.println(filename);            BufferedReader br = null;            try {                br = new BufferedReader(new FileReader(filename));                String s = "";                String allCon = "";                while((s=br.readLine())!=null) {                    allCon+=s+"\r\n";                }                jta.setText(allCon);            } catch (Exception e1) {                e1.printStackTrace();            } finally {                try {                    br.close();                } catch (IOException e1) {                    e1.printStackTrace();                }            }        } else if(e.getActionCommand().equals("save")) {            JFileChooser jfc2 = new JFileChooser();            jfc2.setDialogTitle("另存为...");            jfc2.showSaveDialog(null);            jfc2.setVisible(true);            String filename = jfc2.getSelectedFile().getAbsolutePath();            BufferedWriter bw = null;            try {                bw = new BufferedWriter(new FileWriter(filename));                bw.write(this.jta.getText());            } catch (IOException e1) {                e1.printStackTrace();            } finally {                try {                    bw.close();                } catch (IOException e1) {                    e1.printStackTrace();                }            }         }    }}
0 0
原创粉丝点击