import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.io.FileInputStream;
import java.io.PrintStream;
/**
* Created by Administrator on 2016/3/9.
*/
//继承JFrame
public class Notepad extends JFrame {
//声明文本域
private JTextArea area;
//开发构造
public Notepad(){
area=new JTextArea();
//放到中间
//声明比一个容器
Container con=getContentPane();
con.setLayout(new BorderLayout());
con.add(new JScrollPane(area));
//添加菜单栏
JMenuBar bar=new JMenuBar();
//添加菜单
JMenu menu =new JMenu("文件(F)");
//设置快捷建
menu.setMnemonic('F');
//添加菜单项
JMenuItem item =new JMenuItem("保存(S)");
item.setMnemonic('S');
item.addActionListener(save);
JMenuItem item1=new JMenuItem("打开(O)");
item1.setMnemonic('O');
item1.addActionListener(open);
JMenuItem item2=new JMenuItem("退出(T)");
item2.setMnemonic('T');
item2.addActionListener(exit);
//设置他们之间的关系
menu.add(item);
menu.add(item1);
//设置个线
menu.addSeparator();
menu .add(item2);
bar.add(menu);
//将菜单栏添加到界面上
setJMenuBar(bar);
//设置大小
setSize(500, 600);
//设置可以关闭
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//设置显示,必须要放到最后
setVisible(true);
}
public static void main(String[] args) {
new Notepad();
}
//退出事件
private ActionListener exit=new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("退出......");
Notepad.this.dispose();
}
};
//保存事件
private ActionListener save =new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// System.out.println("saving.......");
JFileChooser chooser=new JFileChooser();
int op=chooser.showSaveDialog(Notepad.this);
//判断用户是否选择了保存
if (op==JFileChooser.APPROVE_OPTION){
//获取用户选择的文件
File file=chooser.getSelectedFile();
//获得area的数据
String txt =area.getText();
txt=txt.replaceAll("\n","\r\n");
try {
PrintStream ps = new PrintStream(file);
ps.print(txt);
ps.close();
}catch (Exception ee){
throw new RuntimeException(ee);
}
}
}
};
//打开事件
private ActionListener open=new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// System.out.println("opening......");
JFileChooser chooser=new JFileChooser();
int oo=chooser.showOpenDialog(null);
if (oo==JFileChooser.APPROVE_OPTION){
//获取用户选择的文件
File file=chooser.getSelectedFile();
//把获得文件数据转化到area中显示
try {
FileInputStream fis = new FileInputStream(file);
byte [] bytes=new byte[1024];
int len=0;
while ((len=fis.read(bytes))!=-1){
String newstring=new String(bytes,0,len);
area.append(newstring);
}
fis.close();
}catch (Exception eee){
throw new RuntimeException(eee);
}
}
}
};
}
以上就是简单记事本的java语言实现。