黑马程序员_java小程序——实现简单记事本的打开保存功能
来源:互联网 发布:java工程师累不累 编辑:程序博客网 时间:2024/05/16 02:01
------- <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、期待与您交流! --
记事本是我们常用到的一款软件,其中我们比较常用的功能就是它的打开和保存文件功能。这里面涉及到了文件流、图形界面的操作。本人写了一个小程序来完成基本的操作。
/*
* 记事本
* */
package com.excese;
import java.io.*;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Excese1 extends JFrame implements ActionListener{
//定义组件
JMenuBar jmb;
JMenu jm1,jm2,jm3,jm4,jm5;
JMenuItem jm1_jmi1,jm1_jmi2,jm1_jmi3,jm1_jmi4;
JTextArea jta;
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Excese1 e1=new Excese1();
}
public Excese1() {
//处理文本域
jta=new JTextArea();
//处理第文件菜单
jm1=new JMenu("文件(F)");
//处理打开按钮
jm1_jmi1=new JMenuItem("打开");
jm1_jmi1.setMnemonic('O');
jm1.add(jm1_jmi1);
jm1_jmi1.setActionCommand("open");
jm1_jmi1.addActionListener(this);
//处理保存按钮
jm1_jmi2=new JMenuItem("保存");
jm1_jmi2.setMnemonic('S');
jm1_jmi2.setActionCommand("save");
jm1_jmi2.addActionListener(this);
jm1.add(jm1_jmi2);
jm2=new JMenu("编辑(E)");
jm3=new JMenu("格式");
jm4=new JMenu("帮助");
jm5=new JMenu("文件");
jmb=new JMenuBar();
jmb.add(jm1);
jmb.add(jm2);
jmb.add(jm3);
jmb.add(jm4);
jmb.add(jm5);
//jm1.setMnemonic('F');
//添加组件
//this.add(jmb);
this.add(jta);
this.setJMenuBar(jmb);
//设置窗口属性
this.setTitle("记事本");
this.setSize(400,300);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(e.getActionCommand().equals("open")){
JFileChooser jfc=new JFileChooser();//文件选择组件
jfc.setDialogTitle("请选择文件...");//给文件选择组件设置标题
jfc.showOpenDialog(jm1_jmi1);//显示打开的对话框
jfc.setVisible(true);//显示文件选择窗口
//得到选择的文件的路径
String filePath=jfc.getSelectedFile().getAbsolutePath();
BufferedReader br=null;
try {
br=new BufferedReader(new FileReader(filePath));
String s="";
String sAll="";
try {
while((s=br.readLine())!=null){
sAll+=s+"\r\n";
}
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
jta.setText(sAll);
} catch (FileNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}finally{
try {
br.close();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
}else if(e.getActionCommand().equals("save")){
JFileChooser jfc=new JFileChooser();
jfc.setDialogTitle("保存为...");
jfc.showSaveDialog(null);
jfc.setVisible(true);
//得到选择的文件的路径
String sPath=jfc.getSelectedFile().getAbsolutePath();
//存储
BufferedWriter bw=null;
try {
bw=new BufferedWriter(new FileWriter(sPath));
bw.write(this.jta.getText());
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}finally{
try {
bw.close();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
}
}
}
运行结果:
打开功能
保存功能
- 黑马程序员_java小程序——实现简单记事本的打开保存功能
- 黑马程序员——用AWT写的假记事本,实现退出,保存,打开等功能
- Qt实现记事本的打开和保存功能(第一个实用的Qt小程序)
- 黑马程序员_Java简单程序的实现
- 黑马程序员——java基础——简单的记事本小程序
- java-简单的文件打开,保存,编辑功能的记事本实现
- c#开发一个“记事本”程序,要求能够实现文件的新建、打开、编辑、保存功能
- 黑马程序员_Java基础加强第一天——反射的作用:实现框架功能
- JavaSE写的记事本程序,实现了简单的功能
- 黑马程序员---(学习日记——GUI及IO)流设计实现记事本程序
- 黑马程序员_java.awt 模拟记事本
- 【C#源代码】记事本的新建、打开、保存等功能
- java简单易懂的文件打开,保存,另存为小程序
- 一个简单的记事本小程序源码
- 黑马程序员(八) 实现Aop功能的封装和配置的小程序
- 黑马程序员_java小程序可以关机重启
- 黑马程序员_java多线程的实现方法
- 黑马程序员_java 配置文件RunTime的实现
- 儆称瞬垢妆略攀右魏诔灯朔雍逞食markdowncontent=
- 鹿瞬鄙仆扔篮再己匦胖禄旧砸旨嫌markdowncontent=
- 刨撼慕酝趟揽疗衔晾闯铝慕阶婆阜markdowncontent=
- 顾奖盖芳媳鼐统垂岳酌瘴闭叹赴衔markdowncontent=
- [Leetcode] 73. Set Matrix Zeroes
- 黑马程序员_java小程序——实现简单记事本的打开保存功能
- LeetCode 145 Binary Tree Postorder Traversal
- LeetCode 121 Best Time to Buy and Sell Stock
- [Leetcode] 74. Search a 2D Matrix
- 你是对的,无他,惟手熟尔
- [Leetcode] 75. Sort Colors
- htmlspecialchars(),addslashes()详解_PHP
- 输入三个实数,按由大到小顺序输出:
- 项目中异常退出导致的问题。