Java文件(io)编程之记事本开发详解

本文实例为大家分享了Java开发简易记事本的具体代码,供大家参考,具体内容如下

public class NotePad extends JFrame implements ActionListener{

//定义需要的组件

JTextArea jta=null; //多行文本框

JMenuBar jmb=null; //菜单条

JMenu jm1=null; //菜单

JMenuItem jmi1=null,jmi2=null; //菜单项

public static void main(String[] args) {

NotePad np=new NotePad();

}

public NotePad(){ //构造函数

jta=new JTextArea(); //创建jta

jmb=new JMenuBar();

jm1=new JMenu("文件");

jm1.setMnemonic('F'); //设置助记符

jmi1=new JMenuItem("打开",new ImageIcon("imag_3.jpg"));

jmi1.addActionListener(this); //注册监听

jmi1.setActionCommand("open");

jmi2=new JMenuItem("保存");

jmi2.addActionListener(this);

jmi2.setActionCommand("save");

this.setJMenuBar(jmb); //加入

jmb.add(jm1); //把菜单放入菜单条

jm1.add(jmi1); //把item放入到Menu中

jm1.add(jmi2);

this.add(jta); //放入到JFrame

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setSize(400,300);

this.setTitle("记事本");

this.setIconImage((new ImageIcon("imag_2.jpg")).getImage());

this.setVisible(true);

}

@Override

public void actionPerformed(ActionEvent arg0) {

//判断是哪个菜单被选中

if(arg0.getActionCommand().equals("open")){

//JFileChooser,创建一个文件选择组件

JFileChooser jfc1=new JFileChooser();

jfc1.setDialogTitle("请选择文件……"); //设置名字

jfc1.showOpenDialog(null); //默认方式

jfc1.setVisible(true); //显示

//得到用户选择的文件全路径

String filename=jfc1.getSelectedFile().getAbsolutePath();

FileReader fr=null;

BufferedReader br=null;

try {

fr=new FileReader(filename);

br=new BufferedReader(fr);

//从文件中读取信息并显示到jta

String s="";

String allCon="";

while((s=br.readLine())!=null){ //循环读取文件,s不为空即还未读完毕

allCon+=s+"\r\n";

}

jta.setText(allCon); //放置到jta

} catch (Exception e) {

e.printStackTrace();

}finally{

try {

fr.close();

br.close();

} catch (Exception e) {

e.printStackTrace();

}

}

}else if(arg0.getActionCommand().equals("save")){

//出现保存对话框

JFileChooser jfc2=new JFileChooser();

jfc2.setDialogTitle("另存为……");

jfc2.showSaveDialog(null); //按默认的方式显示

jfc2.setVisible(true);

//得到用户希望把文件保存到何处,文件全路径

String filename2=jfc2.getSelectedFile().getAbsolutePath();

//准备写入到指定文件

FileWriter fw=null;

BufferedWriter bw=null;

try {

fw=new FileWriter(filename2);

bw=new BufferedWriter(fw);

bw.write(this.jta.getText());

} catch (Exception e) {

e.printStackTrace();

}finally{

try {

bw.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

}

}

运行效果如下

点击文件按钮,点击打开菜单项,选择一个文本文件,效果如下:

打开后,内容显示如下:

对内容稍作修改,另存为名为sss的文件,效果如下:

以上是 Java文件(io)编程之记事本开发详解 的全部内容, 来源链接: utcz.com/p/214289.html

回到顶部