導航:首頁 > 編程語言 > java編程文本

java編程文本

發布時間:2024-08-20 23:12:11

① 用java編寫一個GUI記事本程序,實現文本的輸入,保存,修改,打開操作

代碼如下:

importjava.io.*;
importjava.awt.*;
importjava.awt.event.*;

publicclassjtxtfm{
publicstaticvoidmain(Stringargs[]){
jtxtfrmfm=newjtxtfrm();
}
}
{
FileDialogop,sv;
Buttonbtn1,btn2,btn3;
TextAreatarea;
jtxtfrm(){
super("讀寫文件");
setLayout(null);
setBackground(Color.cyan);
setSize(600,300);
setVisible(true);
btn1=newButton("打開");
btn2=newButton("保存");
btn3=newButton("關閉");
tarea=newTextArea("");
add(btn1);add(btn2);add(btn3);add(tarea);
tarea.setBounds(30,50,460,220);
btn1.setBounds(520,60,50,30);
btn2.setBounds(520,120,50,30);
btn3.setBounds(520,180,50,30);
op=newFileDialog(this,"打開",FileDialog.LOAD);
sv=newFileDialog(this,"保存",FileDialog.SAVE);
btn1.addActionListener(this);
btn2.addActionListener(this);
btn3.addActionListener(this);
addWindowListener(
newWindowAdapter(){
publicvoidwindowClosing(WindowEvente){
setVisible(false);
System.exit(0);
}
}
);
}

publicvoidactionPerformed(ActionEvente){
if(e.getSource()==btn1){
Stringstr;
op.setVisible(true);
try{
Filef1=newFile(op.getDirectory(),op.getFile());
FileReaderfr=newFileReader(f1);
BufferedReaderbr=newBufferedReader(fr);
tarea.setText("");
while((str=br.readLine())!=null)tarea.append(str+' ');
fr.close();
}
catch(Exceptione1)
{}
}

if(e.getSource()==btn2){
sv.setVisible(true);
try{
Filef1=newFile(sv.getDirectory(),sv.getFile());
FileWriterfw=newFileWriter(f1);
BufferedWriterbw=newBufferedWriter(fw);
Stringgt=tarea.getText();
bw.write(gt,0,gt.length());
bw.flush();
fw.close();
}
catch(Exceptione2)
{}
}

if(e.getSource()==btn3){
System.exit(0);
}

}
}

效果圖:

② 求一個用Java編寫的文本編輯器代碼

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
public class MyTextEditor extends JFrame implements ActionListener,ItemListener,MouseListener
{
private File file;
private JTextArea textarea;
private JRadioButtonMenuItem rbmi_red,rbmi_blue,rbmi_green;
private JMenuItem menuitem_,menuitem_cut,menuitem_paste,menuitem_seek;
private JMenuItem menuitem_song,menuitem_fang,menuitem_kai;//字體變數
private JMenuItem menuitem_normal,menuitem_bold,menuitem_italic;//字形變數
private JMenuItem menuitem_20,menuitem_30,menuitem_40;//字型大小變數
private JMenuItem menuitem_exit,menuitem_infor;
private JPopupMenu popupmenu;
private JMenuItem menuitem_red,menuitem_green,menuitem_blue;
private JDialog dialog,dialog1;
private JButton button_seek;
private JTextField textfield_seek;
private JLabel label_seek,label_infor;
String seek;

public MyTextEditor()
{
super("文本編輯器");
this.setSize(400,300);
this.setLocation(360,300);
this.setDefaultCloseOperation(HIDE_ON_CLOSE);

Container ss=this.getContentPane();
this.textarea = new JTextArea();
JScrollPane dd=new JScrollPane(textarea);
ss.add(dd);
textarea.addMouseListener(this);
this.addMenu();
this.setVisible(true);
this.Dialog();
this.Dialog1();

this.file = null;
}

public MyTextEditor(String filename)
{
this();
if (filename!=null)
{
this.file = new File(filename);
this.setTitle(filename);
this.textarea.setText(this.readFromFile());
}
}

public MyTextEditor(File file)
{
this();
if (file!=null)
{
this.file = file;
this.setTitle(this.file.getName());
this.textarea.setText(this.readFromFile());
}
}

public void Dialog() //建立對話框的方法
{
dialog=new JDialog(this,"查找",true);
dialog.setLayout(new FlowLayout());
dialog.setSize(200,90);

label_seek=new JLabel("查找內容");
dialog.add(label_seek);

textfield_seek=new JTextField(10);
dialog.add(textfield_seek);

button_seek=new JButton("查找");
dialog.add(button_seek);
button_seek.addActionListener(this);

}
public void Dialog1()
{

dialog1=new JDialog(this,"專利",true);
dialog1.setLayout(new FlowLayout());
dialog1.setSize(200,100);

label_infor=new JLabel("劉同虎製作");
dialog1.add(label_infor);
}

public void addMenu()
{
JMenuBar menubar = new JMenuBar();
this.setJMenuBar(menubar);

JMenu menu_file = new JMenu("文件"); //文件菜單
menubar.add(menu_file);
JMenuItem menuitem_open = new JMenuItem("打開");
menu_file.add(menuitem_open);
menuitem_open.addActionListener(this);

JMenuItem menuitem_save = new JMenuItem("保存");
menu_file.add(menuitem_save);
menuitem_save.addActionListener(this);

JMenuItem menuitem_saveas = new JMenuItem("另存為");
menu_file.add(menuitem_saveas);
menuitem_saveas.addActionListener(this);

menuitem_exit=new JMenuItem("退出" );
menu_file.add(menuitem_exit);
menuitem_exit.addActionListener(this);

menuitem_infor=new JMenuItem("信息");
menu_file.add(menuitem_infor);
menuitem_infor.addActionListener(this);

JMenu menu_editor=new JMenu("編輯");//編輯菜單
menubar.add(menu_editor);

menuitem_seek=new JMenuItem("查找");
menu_editor.add(menuitem_seek);
menuitem_seek.addActionListener(this);

menuitem_=new JMenuItem("復制");
menuitem_.addActionListener(this);
menu_editor.add(menuitem_);

menuitem_cut=new JMenuItem("剪切");
menu_editor.add(menuitem_cut);
menuitem_cut.addActionListener(this);

menuitem_paste=new JMenuItem("粘貼");
menu_editor.add(menuitem_paste);
menuitem_paste.addActionListener(this);

JMenuItem menu_color=new JMenu("顏色");//顏色菜單
menu_editor.add(menu_color);

ButtonGroup buttongroup=new ButtonGroup();
rbmi_red=new JRadioButtonMenuItem("紅",true);
buttongroup.add(rbmi_red);
menu_color.add(rbmi_red);
rbmi_red.addItemListener(this);

rbmi_blue=new JRadioButtonMenuItem("藍",true);
buttongroup.add(rbmi_blue);
menu_color.add(rbmi_blue);
rbmi_blue.addItemListener(this);

rbmi_green=new JRadioButtonMenuItem("綠",true);
buttongroup.add(rbmi_green);
menu_color.add(rbmi_green);
rbmi_green.addItemListener(this);

JMenu menu_font=new JMenu("設置字體");//設置字體菜單
menubar.add(menu_font);

menuitem_song=new JMenuItem("宋體");
menu_font.add(menuitem_song);
menuitem_song.addActionListener(this);

menuitem_fang=new JMenuItem("仿宋");
menu_font.add(menuitem_fang);
menuitem_fang.addActionListener(this);

menuitem_kai=new JMenuItem("楷體");
menu_font.add(menuitem_kai);
menuitem_kai.addActionListener(this);

JMenu menu_style=new JMenu("設置字形");//設置字形菜單
menubar.add(menu_style);

menuitem_bold=new JMenuItem("粗體");
menu_style.add(menuitem_bold);
menuitem_bold.addActionListener(this);

menuitem_italic=new JMenuItem("斜體");
menu_style.add(menuitem_italic);
menuitem_italic.addActionListener(this);

JMenu menu_size=new JMenu("設置字型大小"); //設置字型大小菜單
menubar.add(menu_size);

menuitem_20=new JMenuItem("20");
menu_size.add(menuitem_20);
menuitem_20.addActionListener(this);

menuitem_30=new JMenuItem("30");
menu_size.add(menuitem_30);
menuitem_30.addActionListener(this);

menuitem_40=new JMenuItem("40");
menu_size.add(menuitem_40);
menuitem_40.addActionListener(this);

popupmenu=new JPopupMenu(); //快捷菜單
JMenuItem menuitem_red=new JMenuItem("紅色");
popupmenu.add(menuitem_red);
menuitem_red.addActionListener(this);

JMenuItem menuitem_green=new JMenuItem("綠色");
popupmenu.add(menuitem_green);
menuitem_green.addActionListener(this);

menuitem_blue=new JMenuItem("藍色");
popupmenu.add(menuitem_blue);
menuitem_blue.addActionListener(this);

textarea.add(popupmenu); //向文本區內添加快捷菜單

}

public void writeToFile(String lines) //寫文件
{
try
{
FileWriter fout = new FileWriter(this.file);
fout.write(lines+"\r\n");
fout.close();
}
catch (IOException ioex)
{
return;
}
}

public String readFromFile() //讀文件
{
try
{
FileReader fin = new FileReader(this.file);
BufferedReader bin = new BufferedReader(fin);
String aline="", lines="";
do
{
aline = bin.readLine();
if (aline!=null)
lines += aline + "\r\n";
} while (aline!=null);

bin.close();
fin.close();
return lines;
}
catch (IOException ioex)
{
return null;
}
}

③ 用java編一個文本漢字替換程序

package com.;

import java.io.*;

public class ReplaceChinese {
public static void main(String[] args) {
String filePath = "F:\\workspace\\onlineChat\\src\\com\\\\ReplaceChinese.java";
File file = new File(filePath);
if (!file.exists()) {
System.out.println("文件不存在!");
return;
}
BufferedReader reader = null;
String result = "";// 用於存修改後的文字
String lineString = "";
try {
reader = new BufferedReader(new FileReader(file));
String tempString = null;
int line = 1;
// 一次讀入一行,直到讀入null為文件結束
while ((tempString = reader.readLine()) != null) {
// 顯示行號
for (int i = 0; i < tempString.length(); i++) {
if (tempString.substring(i, i + 1).matches(
"[\u4e00-\u9fa5]")) {
lineString += "[您要替換的代碼]";
} else {
lineString += tempString.substring(i, i + 1);
}
}
result += lineString + "\n";
lineString = "";
line++;
}
reader.close();
BufferedWriter bw = new BufferedWriter(
new OutputStreamWriter(
new FileOutputStream("F:\\workspace\\onlineChat\\src\\com\\\\ReplaceChinese1.java")));
bw.write(result);
bw.flush();
bw.close();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (reader != null) {
try {
reader.close();
} catch (IOException e1) {
}
}
}
}
}
由於時間緊迫,只把功能實現了,優化你自己做做,能夠成功運行

④ java語言寫一個文本編輯器的源代碼

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.event.*;
import java.util.*; //Date needed
import java.io.PrintWriter;
public class NotePad extends JFrame
{
JTextArea jta;
class newl implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
jta.setText("");
}
}

class openl implements ActionListener
{ public void actionPerformed(ActionEvent e)
{
JFileChooser jf=new JFileChooser();
jf.showOpenDialog(NotePad.this);

}

}
//保存文件的監聽
class savel implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
JFileChooser jf = new JFileChooser();
jf.showSaveDialog(NotePad.this);

}
}
//列印的監聽 ?
class printl implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
// PrintWriter p = new PrintWriter(NotePad.this);
}
}
//退出記事本的監聽
class exitl implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);//退出
}
}

//拷貝的監聽
class l implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
jta.();
}
}

//粘貼的監聽
class pastel implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
jta.paste();
}
}
//剪切的監聽
class cutl implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
jta.cut();
}
}
//查找的監聽

//添加日期的監聽
class datel implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
Date d=new Date();
jta.append(d.toString());
}
}

//構造函數
public NotePad()
{
jta=new JTextArea("",24,40);
JScrollPane jsp=new JScrollPane(jta);
JMenuBar jmb=new JMenuBar();
JMenu mFile=new JMenu("File");
JMenu mEdit=new JMenu("Edit");

JMenuItem mNew=new JMenuItem("New",KeyEvent.VK_N);
mNew.addActionListener(new newl());
mFile.add(mNew);

JMenuItem mOpen=new JMenuItem("Open",KeyEvent.VK_O);
mOpen.addActionListener(new openl());
mFile.add(mOpen);

JMenuItem mSave=new JMenuItem("Save");
mSave.addActionListener(new savel());
mFile.add(mSave);

mFile.addSeparator(); //添加分割線

JMenuItem mPrint = new JMenuItem("Print");
mPrint.addActionListener(new printl());
mFile.add(mPrint);

mFile.addSeparator(); //添加分割線

JMenuItem mExit=new JMenuItem("Exit");
mExit.addActionListener(new exitl());
mFile.add(mExit);
mFile.setMnemonic(KeyEvent.VK_F);

//編輯菜單的子菜單的處理
JMenuItem jmi;
jmi=new JMenuItem("Copy");
jmi.addActionListener(new l());
mEdit.add(jmi);

jmi=new JMenuItem("Cut");
jmi.addActionListener(new cutl());
mEdit.add(jmi);

jmi=new JMenuItem("Paste");
jmi.addActionListener(new pastel());
mEdit.add(jmi);

mEdit.addSeparator(); //添加分割線

jmi=new JMenuItem("Find");

mEdit.add(jmi);

jmi=new JMenuItem("FindNext");
mEdit.add(jmi);
mEdit.addSeparator();
jmi=new JMenuItem("Select All");
mEdit.add(jmi);
jmi=new JMenuItem("Date/Time");
jmi.addActionListener(new datel());
mEdit.add(jmi);

jmb.add(mFile);
jmb.add(mEdit);

this.setJMenuBar(jmb);

this.getContentPane().add(jsp);
this.setSize(200,200);
this.setVisible(true);
}
//主函數,程序入口點
public static void main(String s[])
{
new NotePad();
}

}

閱讀全文

與java編程文本相關的資料

熱點內容
python數字字元串轉數字 瀏覽:657
c程序員可以轉互聯網嗎 瀏覽:490
深圳交醫保用什麼app 瀏覽:461
pdf合並成一張 瀏覽:670
ie9文件夾怎麼查看ftp 瀏覽:62
唯品會python解密 瀏覽:852
安卓高拍儀有什麼用 瀏覽:241
同步盤用什麼app好 瀏覽:188
伺服器上下載是什麼意思 瀏覽:169
s6怎麼接電話加密 瀏覽:152
電腦的命令指令符打不開怎麼辦 瀏覽:535
可編程邏輯器件cpld開發板 瀏覽:888
加裝文件夾圖片 瀏覽:425
27歲程序員offer 瀏覽:619
中國建築史梁思成pdf 瀏覽:198
單片機雙核與單核區別 瀏覽:850
xss攻擊需要編譯的符號 瀏覽:140
南京單片機定址 瀏覽:897
自製西門子編程電纜 瀏覽:807
伺服器還叫什麼名 瀏覽:712