最进做一个记事本,在打开的菜单中想用java.awt的fileDialog来打开和保存文件
请问怎么加载文件到记事本,然后从记事本读文件

解决方案 »

  1.   

    我这里有个这样的,不知道对楼主有帮助没有 // 初始化文件选择器
    JFileChooser chooser = new JFileChooser();
    // 移去所有文件过滤器
    chooser.removeChoosableFileFilter(chooser.getAcceptAllFileFilter());
    // 增加文件过滤器,接受bmp文件
    chooser.addChoosableFileFilter(new MyFileFilter("bmp",
    "图像文件(.bmp)"));
    // 显示打开文件对话框
    int r = chooser.showSaveDialog(this);
    // 选择了文件并点击了打开可保存按钮
    if (r == JFileChooser.APPROVE_OPTION)
    {
    // 得到选择的文件
    File file = chooser.getSelectedFile();
    if (file != null)
    {// 显示提示信息
    JOptionPane.showMessageDialog(null, file.getPath());
    }
    }
      

  2.   

    我这里倒是有个JFileChooser的,lz可以参考下。我也是新手,不好不要介意哈。 public void open() {
    JFileChooser chooser = new JFileChooser("/home/soft01/");
    FileNameExtensionFilter filter = new FileNameExtensionFilter(
    "txt && java", "txt", "java");
    chooser.setFileFilter(filter);
    int returnVal = chooser.showOpenDialog(jf);
    if (returnVal == JFileChooser.APPROVE_OPTION) {
    String re = "";
    try {
    FileInputStream fis = new FileInputStream(chooser
    .getCurrentDirectory()
    + "/" + chooser.getSelectedFile().getName());
    byte[] b = new byte[1024];
    while (true) {
    int num = fis.read(b);
    if (num == -1)
    break;
    re = re + new String(b, 0, num);
    }
    fis.close();// 必须关闭
    } catch (Exception ee) {
    ee.printStackTrace();
    }
    jta.setText(re);
    }
    } public void save() {
    JFileChooser chooser = new JFileChooser("/home/soft01/");
    FileNameExtensionFilter filter = new FileNameExtensionFilter(
    "txt && java", "txt", "java");
    chooser.setFileFilter(filter);
    int returnVal = chooser.showSaveDialog(jf);
    if (returnVal == JFileChooser.APPROVE_OPTION) {
    String str = jta.getText();
    try {
    FileOutputStream fos = new FileOutputStream(chooser
    .getCurrentDirectory()
    + "/" + chooser.getSelectedFile().getName());
    fos.write(str.getBytes());
    } catch (Exception ee) {
    ee.printStackTrace();
    }
    }
    }