网站首页 > 文章中心 > 其它

博学谷java记事本代码

作者:小编 更新时间:2023-09-26 07:27:54 浏览量:360人看过

java记事本源代码

给你个做好了的Java的源程序的记事本,自己看看就行了的,不怎么难的---

import java.awt.*;

import java.awt.event.*;

import java.io.*;

import javax.swing.*;

public class MyNotepad implements ActionListener{

博学谷java记事本代码-图1

private JFrame frame=new JFrame("新记事本");

private JTextArea jta=new JTextArea();

private String result="";

private boolean flag=true;

private File f;

private JButton jb=new JButton("开始");

private JButton jbt=new JButton("替换为");

private JButton jba=new JButton("全部替换");

博学谷java记事本代码-图2

private Icon ic=new ImageIcon("D:\\java课堂笔记\\GUI\\11.gif");

private String value;

private int start=0;

private JFrame jf=new JFrame("查找");

private JFrame jfc=new JFrame("替换");

@Override

public void actionPerformed(ActionEvent e) {

String comm=e.getActionCommand();

if("新建".equals(comm)){

if(!(frame.getTitle().equals("新记事本"))){

if(!flag){

write();

newNew();

}else{

JFileChooser jfc=new JFileChooser("D:\\java课堂笔记");

int returnVal = jfc.showDialog(null,"保存为");

if(returnVal == JFileChooser.APPROVE_OPTION) {//选择文件后再执行下面的语句,保证了程序的健壮性

f=jfc.getSelectedFile();

flag=false;

}

}else if(!(jta.getText().isEmpty())){

}else if("打开".equals(comm)){

jfc.setDialogType(JFileChooser.OPEN_DIALOG);

int returnVal = jfc.showOpenDialog(null);

frame.setTitle(f.getName());

result=read();

value=result;

jta.setText(result);

}else if("保存".equals(comm)){

if(flag){

}else if("另存".equals(comm)){

int returnVal = jfc.showDialog(null,"另存");

}else if("退出".equals(comm)){

System.exit(0);

}else if("撤销".equals(comm)){

jta.setText(value);

}else if("剪切".equals(comm)){

value=jta.getText();

jta.cut();

}else if("复制".equals(comm)){

jta.copy();

}else if("粘贴".equals(comm)){

jta.paste();

}else if("删除".equals(comm)){

jta.replaceSelection(null);

}else if("全选".equals(comm)){

jta.selectAll();

}else if("查找".equals(comm)){

jf.add(jtf,BorderLayout.CENTER);

jf.add(jb,BorderLayout.SOUTH);

jf.pack();

jf.setVisible(true);

jf.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

}else if("替换".equals(comm)){

JLabel jl1=new JLabel("查找内容:");

jfc.setLayout(gl);

jfc.add(jl1);

jfc.add(jtf);

jfc.add(jb);

jfc.add(jt);

jfc.add(jbt);

jfc.add(jba);

jfc.pack();

jfc.setVisible(true);

jfc.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

}else if("版本".equals(comm)){

JDialog jd=new JDialog(frame,"关于对话框");

JLabel l=new JLabel("哈哈哈哈哈哈哈哈哈哈呵呵呵呵呵呵呵呵呵呵呵呵呵");

jd.add(l,BorderLayout.CENTER);

jd.setVisible(true);

//jd.pack();

jd.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);

}else if("开始".equals(comm)||"下一个".equals(comm)){

String temp=jtf.getText();

int s=value.indexOf(temp,start);

if(value.indexOf(temp,start)!=-1){

jta.setSelectionStart(s);

jta.setSelectionEnd(s+temp.length());

jta.setSelectedTextColor(Color.GREEN);

start=s+1;

jb.setText("下一个");

//value=value.substring(s+temp.length());//不能截取字串

}else {

JOptionPane.showMessageDialog(jf, "查找完毕!", "提示", 0, ic);

jf.dispose();

}else if("替换为".equals(comm)){

jta.replaceSelection(jt.getText());

}else if("全部替换".equals(comm)){

String temp=jta.getText();

temp=temp.replaceAll(jtf.getText(), jt.getText());

jta.setText(temp);

public String read(){

String temp="";

try {

FileInputStream fis = new FileInputStream(f.getAbsolutePath());

while(true){

int num=fis.read(b);

if(num==-1)break;

temp=temp+new String(b,0,num);

fis.close();

} catch (Exception e1) {

e1.printStackTrace();

return temp;

public void write(){

FileOutputStream fos=new FileOutputStream(f);

fos.write(jta.getText().getBytes());

fos.close();

} catch (Exception e) {

e.printStackTrace();

public void newNew(){

frame.dispose();

new MyNotepad();

flag=true;

public MyNotepad(){

JMenuBar jmb=new JMenuBar();

String[][] menuItemLab={{"新建","打开","保存","另存","退出"},

{"撤销","剪切","复制","粘贴","删除","全选","查找","替换"},

{"版本"}};

for(int i=0;imenuLab.length;i++){

JMenu menu=new JMenu(menuLab[i]);

jmb.add(menu);

for(int j=0;jmenuItemLab[i].length;j++){

JMenuItem jmi=new JMenuItem(menuItemLab[i][j]);

menu.add(jmi);

jmi.addActionListener(this);

frame.setJMenuBar(jmb);

jta.setLineWrap(true);//自动换行

JScrollPane jsp=new JScrollPane(jta);//滚动窗口面板

frame.add(jsp);

jb.addActionListener(this);

jbt.addActionListener(this);

jba.addActionListener(this);

frame.setVisible(true);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

public static void main(String[] args) {

java编写一个记事本小程序,接着下面的代码写,求大神解救!实现新建,保存,打开功能就行!

package tuxingjiemian;

import javax.swing.event.*;

import java.io.File;

import java.io.PrintStream;

public class jishiben extends JFrame {

JPanel jp=new JPanel();

JFrame find_replace=new JFrame();

JMenu file=new JMenu("文件");

JMenu help=new JMenu("帮助");

JMenuBar menubar=new JMenuBar();

JTextArea aa=new JTextArea();

class Open implements ActionListener {

JFileChooser jf= new JFileChooser();

jf.showOpenDialog(jishiben.this);

PrintStream p=new PrintStream(jf.getSelectedFile().getPath());

class Save implements ActionListener {

jf.showSaveDialog(jishiben.this);

public jishiben(){

this.setTitle("记事本");

this.setLayout(new BorderLayout());

JMenuItem open=new JMenuItem("打开");

open.addActionListener(new Open());

JMenuItem save=new JMenuItem("保存");

save.addActionListener(new Save());

JMenuItem exit=new JMenuItem("退出");

exit.addActionListener(new ActionListener() {

});

file.add(open);

file.add(save);

file.addSeparator();

file.add(exit);

menubar.add(file);

this.add(new JScrollPane(aa),BorderLayout.CENTER);

JMenuItem copy=new JMenuItem("复制");

JMenuItem past=new JMenuItem("粘贴");

JMenuItem delete=new JMenuItem("删除");

JMenuItem find=new JMenuItem("查找");

JMenuItem replace=new JMenuItem("替换");

copy.addActionListener(new ActionListener() {

jishiben.this.aa.copy();

past.addActionListener(new ActionListener() {

jishiben.this.aa.paste();

delete.addActionListener(new ActionListener() {

jishiben.this.aa.replaceSelection(null);

edit.add(copy);

edit.add(past);

edit.add(delete);

edit.add(find);

edit.add(replace);

menubar.add(edit);

help.add(new JMenuItem("帮助"));

menubar.add(help);

this.add(menubar,BorderLayout.NORTH);

this.setVisible(true);

this.setDefaultCloseOperation(this.EXIT_ON_CLOSE);

new jishiben();

};

用JAVA编个简单的记事本程序

import java.util.Calendar;

import java.util.Date;

class Editor extends Frame implements ActionListener,ItemListener

{

// Date date=new Date();

Dialog dialog,dialog1;

public Editor (String s)

ImageIcon YouImg = new ImageIcon("iconimage.jpg");

setIconImage(YouImg.getImage());

addWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent e){

dispose();

MenuBar mb=new MenuBar();

setMenuBar(mb);

Menu pattern=new Menu("格式(P)");Menu time=new Menu("时间(T)");

MenuItem exit=new MenuItem("退出",new MenuShortcut(KeyEvent.VK_Q));

MenuItem tdate=new MenuItem("日期/时间",new MenuShortcut(KeyEvent.VK_D));

MenuItem renew=new MenuItem("新建", new MenuShortcut(KeyEvent.VK_N));

MenuItem save=new MenuItem("保存", new MenuShortcut(KeyEvent.VK_S));

MenuItem open=new MenuItem("打开",new MenuShortcut(KeyEvent.VK_O));

MenuItem copy=new MenuItem("复制",new MenuShortcut(KeyEvent.VK_C));

MenuItem paste=new MenuItem("粘贴",new MenuShortcut(KeyEvent.VK_V));

MenuItem cut=new MenuItem("剪切",new MenuShortcut(KeyEvent.VK_X));

MenuItem helptopic=new MenuItem("主题",new MenuShortcut(KeyEvent.VK_T));

helptopic.addActionListener(this);

dialog.addWindowListener(new WindowAdapter(){

dialog.setVisible(false);}

dialog1.addWindowListener(new WindowAdapter(){

dialog1.setVisible(false);}

//dialog.setBackground(Color.WHITE);

ta1=new TextArea("至于记事本的主题嘛,因为本人的水平有限, 所有不能为大家作过多的指导,望大家见谅!"); //今天这一节我想加一个文本框用来放帮助信息.

ce1.add("华文行楷");ce1.add("华文中宋");ce1.add("华文新魏");ce1.add("华文细黑");ce1.add("宋体");ce1.add("方正姚体");

for(int n1=0;n1=100;n1++)

p1.setLayout( null);

dialog1.add(ta1);

//设置字体的下拉情况

MenuItem Font=new MenuItem("字体");//给字体加监听器

Font.addActionListener(this);

MenuItem Replace=new MenuItem("替换"); MenuItem Seek=new MenuItem("查找");

//首要添加组件的情况

mb.add(file);mb.add(edit);mb.add(pattern);mb.add(time);mb.add(help);

file.add(renew);file.addSeparator();file.add(open);time.add(tdate);

file.addSeparator(); file.add(exit);file.addSeparator();file.add(save);

edit.add(copy); edit.addSeparator();edit.add(paste);edit.addSeparator();edit.add(cut);

pattern.add(Font); pattern.add(Replace);

pattern.add(Seek);help.add(helptopic);

//给必要的组件加上监听器

renew.addActionListener( this);tdate.addActionListener(this);

open.addActionListener(this); save.addActionListener(this);exit.addActionListener(this);

cut.addActionListener(this);copy.addActionListener(this);paste.addActionListener(this);

//添加必要的组件

setVisible(true);

this.validate() ;

public void itemStateChanged(ItemEvent e) {

public void actionPerformed(ActionEvent e)

if(e.getActionCommand().equals("新建"))

{System.out.println("new ");

ta.setText("");}

if(e.getActionCommand().equals("退出"))

{ System.exit(0);}

try

if(e.getActionCommand().equals("打开"))

openText();

if(e.getActionCommand().equals("保存"))

saveText();

}catch(IOException e1){}

if(e.getActionCommand().equals("复制"))

{ str=ta.getSelectedText();}

if(e.getActionCommand().equals("粘贴"))

{ ta.insert(str,ta.getCaretPosition());}

if(e.getActionCommand().equals("剪切"))

{str=ta.getSelectedText();ta.replaceRange("",ta.getSelectionStart(),ta.getSelectionEnd());

if(e.getActionCommand().equals("字体"))

{dialog.setVisible(true);}

if(e.getActionCommand().equals("主题"))

{dialog1.setVisible(true);}

if(e.getActionCommand().equals("颜色"))

Color clr=JColorChooser.showDialog(this,"颜色对话框",null);

ta.setForeground(clr);

dialog.setVisible(false);

if(e.getSource()==btn1)

if(k==1)

//if (e.getActionCommand().equals("日期/时间"))

//ta.setText(ta.getText()+""+date);

if(e.getActionCommand().equals("日期/时间"))

Calendar c1 =Calendar.getInstance();

int y = c1.get(Calendar.YEAR);

int m = c1.get(Calendar.MONTH);

int d = c1.get(Calendar.DATE);

int h = c1.get(Calendar.HOUR);

int m1 = c1.get(Calendar.MINUTE);

public void openText() throws IOException

FileDialog fd=new FileDialog(this,"打开文件对话框",FileDialog.LOAD);

fd.setVisible(true);FileInputStream fis=new FileInputStream(fd.getDirectory()+fd.getFile());

ta.setText("");

int n=0;

while((n=fis.read())!=-1)

ta.append(""+(char)n);

public void saveText() throws IOException

FileDialog fd=new FileDialog(this,"打开文件对话框",FileDialog.SAVE);

fd.setVisible(true);

FileOutputStream out=new FileOutputStream(fd.getDirectory()+fd.getFile()+".txt");

String str=ta.getText();

String str1=ta.getText();

for(int n=0;nstr.length();n++)

out.write((byte)str.charAt(n));

out.close();

public static void main(String[] args)

Editor f=new Editor(" 记事本程序");

//添加时间代码

Date date=new Date();

System.out.print(date);

/*Calendar now=Calendar.getInstance();

int year=now.get(Calendar.YEAR);

int month=now.get(Calendar.MONTH)+1;

int day=now.get(Calendar.DATE);

System.out.print(year+"年"+month+"月"+day+"日");

int week=now.get(Calendar.DAY_OF_WEEK);

class dialog extends Dialog

public dialog()

super(dialog, "字体设置");

class Mycanvas extends Canvas

Toolkit tk;

Image img;

Mycanvas()

tk=getToolkit();

img=tk.getImage("photo.jpg");

public void paint(Graphics g)

求一个记事本的JAVA源代码

/*

* WriteBoard.java

*

*/

/**

* @author LecH.giF

import java.awt.datatransfer.*;

import java.awt.FileDialog;

public class WriteBoard extends java.awt.Frame {

Clipboard clipboard =null;

FileDialog fc = new FileDialog(this);

/** Creates new form WriteBoard */

public WriteBoard() {

clipboard = getToolkit().getSystemClipboard();

initComponents();

/** This method is called from within the constructor to

* initialize the form.

* WARNING: Do NOT modify this code. The content of this method is

* always regenerated by the Form Editor.

// editor-fold defaultstate="collapsed" desc=" Generated Code "

private void initComponents() {

textArea1 = new java.awt.TextArea();

menuBar1 = new java.awt.MenuBar();

menu1 = new java.awt.Menu();

menuItem1 = new java.awt.MenuItem();

setTitle("WriteBoard");

addWindowListener(new java.awt.event.WindowAdapter() {

public void windowClosing(java.awt.event.WindowEvent evt) {

exitForm(evt);

add(textArea1, java.awt.BorderLayout.CENTER);

menu1.setLabel("Menu");

menuItem1.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

newText(evt);

menu1.add(menuItem1);

open(evt);

exit(evt);

menuBar1.add(menu1);

setMenuBar(menuBar1);

pack();

}// /editor-fold

fc.show();

if(fc.getFile()!=null){

File file = new File(fc.getFile());

PrintWriter pw = new PrintWriter(file);

pw.print(textArea1.getText());

pw.flush();

pw.close();

} catch (FileNotFoundException ex) {

ex.printStackTrace();

else{

return;

Transferable contents = clipboard.getContents(this);

DataFlavor flavor = DataFlavor.stringFlavor;

if(contents.isDataFlavorSupported(flavor))

try{

String str;

str=(String)contents.getTransferData(flavor);

textArea1.append(str);

}catch(Exception e){}

String temp = this.textArea1.getSelectedText();

StringSelection text = new StringSelection(temp);

clipboard.setContents(text,null);

int start = textArea1.getSelectionStart();

int end = textArea1.getSelectionEnd();

textArea1.replaceRange("",start,end);

private void open(java.awt.event.ActionEvent evt) {

FileReader fr = new FileReader(file);

BufferedReader br = new BufferedReader(fr);

String s;

while((s= br.readLine())!=null){

textArea1.append(s+"\n");

fr.close();

br.close();

} catch (IOException ex) {

private void newText(java.awt.event.ActionEvent evt) {

this.textArea1.setText("");

private void exit(java.awt.event.ActionEvent evt) {

/** Exit the Application */

private void exitForm(java.awt.event.WindowEvent evt) {

* @param args the command line arguments

public static void main(String args[]) {

博学谷java记事本代码-图3

java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {

new WriteBoard().setVisible(true);

// Variables declaration - do not modify

private java.awt.Menu menu1;

private java.awt.MenuBar menuBar1;

private java.awt.MenuItem menuItem1;

private java.awt.TextArea textArea1;

// End of variables declaration

java简单记事本源代码 带解释

import javax.swing.border.*;

class test implements ActionListener

JFrame frame;

JTextArea ta;

JMenuBar mb;

ButtonGroup bg;

int a=0;

char c1;

int i=0;

test that=new test();

that.go();

public void go()

frame=new JFrame("计算器");

Container cp= frame.getContentPane();

cp.setLayout(new FlowLayout());

mb=new JMenuBar();

bg=new ButtonGroup();

p1.setBackground(Color.yellow);

cp.setBackground(Color.CYAN);

frame.setJMenuBar(mb);

ta.setEditable(false);

p1.add(ta);

Border etched=BorderFactory.createEtchedBorder();

Border border=BorderFactory.createTitledBorder(etched,"计算类型");

b1.addActionListener(this);

b10.addActionListener(this);

b11.setActionCommand("*");

b11.addActionListener(this);

rb1.setActionCommand("kxx");

rb1.addActionListener(this);

public void actionPerformed(ActionEvent e) //throws Exception

if (e.getActionCommand()=="bzx")

if (e.getActionCommand()=="kxx")

if (e.getActionCommand()=="1")

ta.append("1");

if (e.getActionCommand()=="0")

ta.append("0");

if (e.getActionCommand()=="+")

s1=ta.getText();

d1 = Double.parseDouble(s1);

i=1;

if (e.getActionCommand()=="-")

if (e.getActionCommand()=="*")

if (e.getActionCommand()=="/")

if (e.getActionCommand()=="=")

if(i==1)

ta.setText("ERROR");

else

if (e.getActionCommand()=="C")

/*if (e.getActionCommand()=="Backspace")

//ta.cut(ta.select(a-1,a));

if (e.getActionCommand()=="1/x")

if (e.getActionCommand()==".")

ta.append(".");

if (e.getActionCommand()=="+/-")

if (e.getActionCommand()=="x^y")

if (e.getActionCommand()=="√x")

if (e.getActionCommand()=="x!")

if (d10)

ta.setText( "error");

else if (d1==0)

ta.setText( "0.0");

else {

for (int k=1;k=d1 ;k++ )

if (e.getActionCommand()=="sin")

使用记事本编写JAVA程序,并运行输出结果,具体的实现步骤是什么?

①.、首先在电脑中新建一个记事本,将记事本的后缀改为".java",如下图所示.

以上就是土嘎嘎小编为大家整理的博学谷java记事本代码相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章