在设计文本阅读器的时候,为什么不能显示文本的内容呢?

解决方案 »

  1.   

    "事件" 主要代码如下:private JMenuItem getJMenuItem1() {
    if (jMenuItem1 == null) {
    jMenuItem1 = new JMenuItem();
    jMenuItem1.setPreferredSize(new Dimension(39, 23));
    jMenuItem1.setText("打开");
    jMenuItem1.addActionListener(new java.awt.event.ActionListener() {
    public void actionPerformed(java.awt.event.ActionEvent e) {
    //System.out.println("actionPerformed()"); // TODO Auto-generated Event stub actionPerformed()

    JFileChooser filechooser=new JFileChooser();
    filechooser.setFileSelectionMode(JFileChooser.FILES_ONLY);

    int result=filechooser.showOpenDialog(jInternalFrame1);

    if(result==EXIT_ON_CLOSE)
    return;
    File filename=filechooser.getSelectedFile();

    if(filename.isFile())
    readFile(filename);
    else
    JOptionPane.showMessageDialog(null,"非法的文件名称  ");
    } private void readFile(File filename) {
    // TODO Auto-generated method stub
    if(filename.isFile()){
    jInternalFrame1=new JInternalFrame("文件的内容",true,true,true,true);
    jInternalFrame1.getContentPane().add(new JScrollPane(jTextArea1));
    jInternalFrame1.setVisible(true);
    jInternalFrame1.pack();
    jDesktopPane1.add(jInternalFrame1);
    try{
    BufferedReader output=new BufferedReader(new FileReader(filename));
    StringBuffer buffer=new StringBuffer();
    String text;
    while((text=output.readLine())!=null)
    buffer.append(text+"\n");
    output.close();
    jTextArea1.setText(buffer.toString());
    }catch(IOException e){
    System.out.println("出现错误了~");
    }

    }
    }
    });
    }
    return jMenuItem1;
    }