请大家帮帮忙啊....
我想打开一个文本文件,如记事本那样:点击(文件)-->打开-->然后选择一个文本文件(*.txt),
然后该文件的内容能显示在窗口中。小弟不才,可能描述上有点不清楚,不过大概就是这个样子吧。呵呵
给出关键部分就行....!先在此谢谢大家啦
我想打开一个文本文件,如记事本那样:点击(文件)-->打开-->然后选择一个文本文件(*.txt),
然后该文件的内容能显示在窗口中。小弟不才,可能描述上有点不清楚,不过大概就是这个样子吧。呵呵
给出关键部分就行....!先在此谢谢大家啦
import java.awt.Color;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;import javax.swing.JColorChooser;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JTextArea;public class NoteBook extends JFrame {
private JTextArea ta; private JMenuBar mb; private JMenu file; private JMenuItem open, color, exit; public NoteBook() {
super("记事本");
Container c = getContentPane();
mb = new JMenuBar();
open = new JMenuItem("打开");
color=new JMenuItem("颜色");
exit = new JMenuItem("退出");
open.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
JFileChooser fc=new JFileChooser();
fc.setSize(300,300);
fc.showOpenDialog(NoteBook.this);
File selectedFile=fc.getSelectedFile();
if (selectedFile!=null){
NoteBook.this.ta.setText(readFile(selectedFile));
}
}
});
color.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
JColorChooser.showDialog(NoteBook.this, "请选择颜色", Color.RED);
}
});
exit.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
file=new JMenu("文件");
mb.add(file);
file.add(open);
file.add(color);
file.add(exit);
setJMenuBar(mb);
ta = new JTextArea();
add(ta);
setSize(800, 600);
setVisible(true);
} public static void main(String args[]) {
NoteBook nb = new NoteBook();
} private static String readFile(File f){
try {
BufferedReader r=new BufferedReader(new FileReader(f));
String curLine;
StringBuffer sb=new StringBuffer();
while((curLine=r.readLine())!=null){
sb.append(curLine);
sb.append("\n");
}
r.close();
return sb.toString();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return "";
}
}