Java文件编程之关于记事本开发的实例详解
java
关于
记事本
这篇文章主要为大家详细介绍了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文件编程之关于记事本开发的实例详解的详细内容。更多信息请关注PHP中文网其他相关文章!
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
刺客信条阴影:贝壳谜语解决方案
2 周前
By DDD
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
3 周前
By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

Java 8引入了Stream API,提供了一种强大且表达力丰富的处理数据集合的方式。然而,使用Stream时,一个常见问题是:如何从forEach操作中中断或返回? 传统循环允许提前中断或返回,但Stream的forEach方法并不直接支持这种方式。本文将解释原因,并探讨在Stream处理系统中实现提前终止的替代方法。 延伸阅读: Java Stream API改进 理解Stream forEach forEach方法是一个终端操作,它对Stream中的每个元素执行一个操作。它的设计意图是处
