打开文本文件
下面贴上完整代码,代码里面有详细注释
[html] import java.awt.FileDialog;
import java.awt.GridLayout;
import java.awt.Toolkit;
import java.awt.datatransfer.Clipboard;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.StringSelection;
import java.awt.datatransfer.Transferable;
import java.awt.datatransfer.UnsupportedFlavorException;
import java.awt.event.*;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileDescriptor;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.FilenameFilter;
import java.io.IOException;
import java.io.PrintWriter;
import java.io.Writer;
import javax.swing.*;
import javax.swing.event.*;
import javax.swing.filechooser.FileNameExtensionFilter;
import javax.swing.undo.UndoManager;
/*
* 记事本----独孤我---2011年12月5日----绿岛网络办公室
* 转载请注明出处*
*
* */
public class Notepad extends JFrame implements ActionListener
{
/**
*
*/
private static final long serialVersionUID = 1L;
JPanel pl=new JPanel();
JTextArea myarea=new JTextArea();
//相关变量
int start=0;//查找开始位置
int end=0;//查找结束位置
private String filename; //打开的文件名
String textContent="";//编辑框中的内容
private Writer file_writer;
UndoManager undoManager = new UndoManager();//撤销管理器
public Notepad()
initComponment();//面板初始化
}
private void initComponment()
{
//菜单栏
JMenuBar mb=new JMenuBar();
//弹出菜单
final JPopupMenu myPopMenu=new JPopupMenu();
JMenuItem copy_pop=new JMenuItem("复制");
JMenuItem cut_pop=new JMenuItem("剪切");
JMenuItem paste_pop=new JMenuItem("粘贴");
JMenuItem delete_pop=new JMenuItem("删除");
JMenuItem exit_pop=new JMenuItem("退出");
myPopMenu.add(cut_pop);
myPopMenu.add(copy_pop);
myPopMenu.add(delete_pop);
myPopMenu.add(paste_pop);
myPopMenu.add(exit_pop);
cut_pop.addActionListener(this);
copy_pop.addActionListener(this);
delete_pop.addActionListener(this);
paste_pop.addActionListener(this);
exit_pop.addActionListener(this);
//菜单
JMenu file=new JMenu("文件");
JMenu edit=new JMenu("编辑");
JMenu help=new JMenu("帮助");
//子菜单
JMenuItem newnew_file=new JMenuItem("新建");
JMenuItem open=new JMenuItem("打开");
JMenuItem save=new JMenuItem("保存");
JMenuItem save_as=new JMenuItem("另存为");
JMenuItem exit=new JMenuItem("退出");
JMenuItem search=new JMenuItem("查找和替换");
JMenuItem copy=new JMenuItem("复制");
JMenuItem cut=new JMenuItem("剪切");
JMenuItem paste=new JMenuItem("粘贴");
JMenuItem delete=new JMenuItem("删除");
//绑定监听事件
new_file.addActionListener(this);
open.addActionListener(this);
save.addActionListener(this);
save_as.addActionListener(