Java学习笔记――文本操作(记事本实现) (四)

2014-11-24 07:17:29 · 作者: · 浏览: 11
myarea.setText(temp);
br.close();
file_reader.close();
textContent=myarea.getText();
setTitle("记事本-"+filename);

}
}
else if(e.getActionCommand()=="保存")
{
save();
}
else if(e.getActionCommand()=="另存为")
{
FileDialog fileDialog=new FileDialog(this,"另存为",FileDialog.SAVE);
fileDialog.setFile("*.txt");
fileDialog.setVisible(true);
if(fileDialog.getFile()!=null) {

//File temp=new File(file.getAbsolutePath()+".txt");
//file.renameTo(temp);
//写入文件
FileWriter fw=new FileWriter(fileDialog.getDirectory()+fileDialog.getFile());
BufferedWriter bw=new BufferedWriter(fw);
PrintWriter pw=new PrintWriter(bw);
pw.print(myarea.getText());
textContent=myarea.getText();
pw.close();
bw.close();
fw.close();

}
}
else if(e.getActionCommand()=="退出")
{
if(!myarea.getText().equals(textContent))
{
int result=JOptionPane.showConfirmDialog(null,"文件内容已改变,确认保存退出吗?","警告",1);
if(result==JOptionPane.OK_OPTION)
{
save();
System.exit(0);
}
}
else
System.exit(0);
}
else if(e.getActionCommand()=="查找和替换")
{
//查找对话框
JDialog search=new JDialog(this,"查找和替换");
search.setSize(200, 100);
search.setLocation(450,350);
JLabel label_1=new JLabel("查找的内容");
JLabel label_2=new JLabel("替换的内容");
final JTextField textField_1=new JTextField(5);
final JTextField textField_2=new JTextField(5);
JButton buttonFind=new JButton("查找下一个");
JButton buttonChange=new JButton("替换");
JPanel panel=new JPanel(new GridLayout(2,3));
panel.add(label_1);
panel.add(textField_1);
panel.add(buttonFind);
panel.add(label_2);
panel.add(textField_2);
panel.add(buttonChange);
search.add(panel);
search.setVisible(true);


//为查找下一个 按钮绑定监听事件
buttonFind.addActionListener(new ActionListener() {

@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
String findText=textField_1.getText();//查找的字符串

String textArea=myarea.getText();//当前文本框的内容
start=textArea.indexOf(findText,end);
end=start+findText.length();
if(start==-1)//没有找到
{