public int showOpenDialog(Component parent)
public int showSaveDialog(Component parent)
http://java.sun.com/docs/books/tutorial/uiswing/components/filechooser.html

解决方案 »

  1.   

    前后都不用管了,各位大虾帮我把   需要完善   的地方给添上吧。   谢谢啦
    import javax.swing.event.*;
    import javax.swing.*;import java.lang.*;
    import java.awt.*;
    import java.io.*;
    import java.awt.datatransfer.*;
    import java.awt.event.*;
    public class MyInternalFrame extends JInternalFrame implements ActionListener 
    {
    static private final String newline = "\n"; 
    JTextArea text = new JTextArea();
    JMenuBar menuBar = new JMenuBar();
    JMenu fileMenu = new JMenu("File");
    JMenuItem newItem = new JMenuItem("New");
    JMenuItem openItem = new JMenuItem("Open");
    JMenuItem saveItem = new JMenuItem("Save");
    JMenuItem saveAsItem = new JMenuItem("Save As");
    JMenuItem exitItem = new JMenuItem("Exit");
    JMenu editMenu = new JMenu("Edit");
    JMenuItem selectItem = new JMenuItem("Select All");
    JMenuItem copyItem = new JMenuItem("Copy");
    JMenuItem cutItem = new JMenuItem("Cut");
    JMenuItem pasteItem = new JMenuItem("Paste");
    File fileName = null;
    Toolkit toolKit=Toolkit.getDefaultToolkit();
    Clipboard clipBoard=toolKit.getSystemClipboard();
       
        private JFileChooser openFileDialog = new JFileChooser();
    private JFileChooser saveAsFileDialog = new JFileChooser();   public MyInternalFrame(String s)
    {
    Container con=getContentPane();
    con.add(new JScrollPane(text),BorderLayout.CENTER);
    setTitle(s);
    setFont(new Font("Times New Roman",Font.PLAIN,12));
    setBackground(Color.white);
    setSize(400,300);
    setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    addInternalFrameListener(new InternalFrameAdapter ()
    {
    public void internalFrameActivated(InternalFrameEvent e)
    {
    setLayer(JDesktopPane.DRAG_LAYER);

    public  void internalFrameDeactivated(InternalFrameEvent e)
    {
    setLayer(JDesktopPane.DEFAULT_LAYER);                               

    });
    fileMenu.add(newItem);
    fileMenu.add(openItem);
    fileMenu.addSeparator();
    fileMenu.add(saveItem);
    fileMenu.add(saveAsItem);
    fileMenu.addSeparator();
    fileMenu.add(exitItem);
    editMenu.add(selectItem);
    editMenu.addSeparator();
    editMenu.add(copyItem);
    editMenu.add(cutItem);
    editMenu.add(pasteItem);
    menuBar.add(fileMenu);
    menuBar.add(editMenu);
    setJMenuBar(menuBar);
    con.validate();
    add(text);

        
    newItem.addActionListener(this);
    openItem.addActionListener(this);
    saveItem.addActionListener(this);
    saveAsItem.addActionListener(this);
    exitItem.addActionListener(this);
    selectItem.addActionListener(this);
    copyItem.addActionListener(this);
    cutItem.addActionListener(this);
    pasteItem.addActionListener(this);
    }
    public JTextArea getJTextArea()
    {
    return text;
    }  public void actionPerformed(ActionEvent e) 
    {
    if(e.getSource() == newItem)
    {
    text.setText("");
    }
    else if(e.getSource() == openItem)
    {
    //需要完善
                       }
    else if (e.getSource() == saveItem)
    {
    //需要完善
    }
    else if(e.getSource() == saveAsItem)
    {
    //需要完善 }
    else if(e.getSource() == selectItem)
    {
    text.selectAll();
    }
    else if(e.getSource() == copyItem)
    {
    text.copy();
    }
    else if(e.getSource() == cutItem)
    {
    text.cut();
    }
    else if(e.getSource() == pasteItem)
    {
    text.paste();
    }
    else if(e.getSource() == exitItem)
    {
    setVisible(false);
       dispose();
    }

    public void readFile(String fileName)
    {
    try
    {
    File file = new File(fileName);
    FileReader readIn = new FileReader(file);
    int size = (int)file.length();
    int charsRead = 0;
    char[] content = new char[size];
    while(readIn.ready())
    charsRead += readIn.read(content, charsRead, size - charsRead);
    readIn.close();
    text.setText(new String(content, 0, charsRead));
    }
    catch(IOException e)
    {
    System.out.println("Error opening file");
    }
    } public void writeFile(String fileName)
    {
    try
    {
    File file = new File (fileName);
    FileWriter writeOut = new FileWriter(file);
    writeOut.write(text.getText());
    writeOut.close();
    }
    catch(IOException e)
    {
    System.out.println("Error writing file");
    }
    }
    }
      

  2.   

    JOptionPane就是只能打开一些常用对话框的,比如确认对话框,保存到什么目录,打开什么文件名,至于如何保存文件,和JOptionPane根本没任何关系,得自己写。
      

  3.   

    文本的,用FileWriter/FileReader
    二进制的,用FileOutputStream/FileInputStream
      

  4.   

    忘了还有对象的,用ObjectOutputStream/ObjectInputStream
      

  5.   

    记事本,应该是文本的,FileWriter