亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Java > 正文

使用Java制作一個簡單的記事本

2019-11-26 15:17:21
字體:
來源:轉載
供稿:網友

通過使用Java的Swing、IO來實現一個簡單記事本,實現打開指定的text文本文件,然后將text文件的內容加載到Swing組件中,然后在Swing組件中編輯記事本內容,然后同菜單的保存選項將編輯后的內容保存到text文件中。代碼如下:

復制代碼 代碼如下:

import java.io.*;
import java.nio.*;
import java.nio.channels.*;
import java.nio.charset.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.JOptionPane;
/**
*功能:簡單記事本
*2011-12-25
*/
public class SimpleNotepad implements ActionListener{
    private Frame frame;
    private FileDialog fd_load;
    private FileDialog fd_save;
    private TextArea ta;
    private String file = "";
    private MenuItem save;
    private RandomAccessFile raf;
    private FileChannel fci;
    private FileLock flock;
    private CharsetEncoder encoder;
    private CharsetDecoder decoder;
    public static void main( String args[]) {
        new SimpleNotepad().init();
    }
    public void init(){
        frame = new Frame("My Notepad");
        MenuBar mb = new MenuBar();
        Menu file = new Menu("文件");
        Menu help = new Menu("幫助");
        MenuItem open = new MenuItem("打開");
        save = new MenuItem("保存");
        save.setEnabled(false);
        file.add(open);
        file.add(save);
        mb.add(file);
        mb.add(help);     
        frame.setMenuBar(mb);
        ta = new TextArea();
        frame.add(ta,"Center");   
        open.addActionListener(this);
        save.addActionListener(this);
        frame.addWindowListener(new WindowAdapter(){
            public void windowClosing(WindowEvent e){
                System.exit(0);
            } 
        }); 
        frame.setSize(600,400);
        frame.setLocation(300,100);
        frame.setVisible( true);     
        fd_load = new FileDialog(frame,"打開文件",FileDialog.LOAD);
        fd_save = new FileDialog(frame,"保存文件",FileDialog.SAVE);
        Charset charset = Charset.forName(System.getProperty("file.encoding"));
        encoder = charset.newEncoder();
        decoder = charset.newDecoder();
    }
    public void actionPerformed(ActionEvent e){
        String s = e.getActionCommand();
        if(s.equals("打開")){
            fd_load.setVisible(true);
            String d = fd_load.getDirectory();
            String f = fd_load.getFile();
            if((d != null) && (f != null)){
                String destfile = d + f;
                if(destfile.equals(file)){
                    return;
                }else{
                    this.closeFile();
                    file = destfile;
                    this.loadFile();
                } 
            }
        }else if(s.equals("保存")){
            this.saveFile();
        }
    } 
    public void loadFile(){
        try{
            raf = new RandomAccessFile(file,"rw");
            fci = raf.getChannel();
            flock = fci.tryLock();
            if(flock == null){
                ta.setText("");
                JOptionPane.showMessageDialog(null,
                    "文件正在使用中,無法以獨占的方式打開!",
                    "錯誤提示", JOptionPane.ERROR_MESSAGE);  
                file = "";
                raf.close();
                raf = null;
            }else{
                int length = (int)fci.size();
                ByteBuffer bb = ByteBuffer.allocate(length);
                fci.read(bb);
                bb.flip();
                CharBuffer cb = decoder.decode(bb);
                ta.setText(cb.toString());
                frame.setTitle("My Notepad - " + file);
                save.setEnabled(true);
            }
        }catch(IOException e){
            e.printStackTrace();  
        }
    }
    public void saveFile(){
        String content = ta.getText();
        try{
            CharBuffer cb = CharBuffer.wrap(content.toCharArray());
            ByteBuffer bb = encoder.encode(cb);
            raf.setLength(0);
            fci.write(bb);
            fci.force(true);
        }catch(IOException e){
            e.printStackTrace();  
        }
    }
    public void closeFile(){
        try{
            if(flock != null){
                flock.release();
            }
            if(raf != null){
                raf.close();  
            }
            file = "";
            frame.setTitle("My Notepad");
            save.setEnabled(false);
        }catch(IOException e){
            e.printStackTrace();  
        } 
    } 
}

效果圖:

 

以上就是本文的全部內容了,希望大家能夠喜歡。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
高跟丝袜一区二区三区| 亚洲人成网站999久久久综合| 亚洲欧美精品suv| 高清一区二区三区四区五区| 亚洲男人天堂古典| 精品视频久久久久久久| 亚州国产精品久久久| 国产亚洲日本欧美韩国| 精品国产乱码久久久久久虫虫漫画| 久久久在线观看| 亚洲激情电影中文字幕| 日韩女优人人人人射在线视频| 久久视频在线免费观看| 亚洲日本中文字幕| 久久久亚洲成人| 亚洲精品欧美一区二区三区| 精品久久久国产| 国产精品91久久久久久| 国产69精品99久久久久久宅男| 国产精品久久久久久久久久久久久| 国产一区二区三区视频在线观看| 欧美激情第三页| 国产精品爱久久久久久久| 国产主播欧美精品| 欧美日韩激情视频| 欧美日韩性视频在线| 久久久999精品视频| 亚洲视频综合网| 欧美色道久久88综合亚洲精品| 国语自产精品视频在线看一大j8| 伊人激情综合网| 狠狠躁夜夜躁人人躁婷婷91| 亚洲精美色品网站| 国产成人精品久久| 日本免费一区二区三区视频观看| 日韩最新免费不卡| 欧美日韩国产成人| 国产日韩中文字幕在线| 国产精品热视频| 精品国内自产拍在线观看| 亚洲自拍小视频| 国产日韩亚洲欧美| 亚洲国产精品人久久电影| 亚洲成人动漫在线播放| 久久精品色欧美aⅴ一区二区| 亚洲国产又黄又爽女人高潮的| 欧美日韩国产综合视频在线观看中文| 国产91久久婷婷一区二区| 亚洲精品不卡在线| 最近2019中文字幕mv免费看| 亚洲一区二区三区成人在线视频精品| 91影院在线免费观看视频| 欧美大学生性色视频| 欧美在线中文字幕| 成人午夜在线影院| 欧美日韩国产精品专区| 在线亚洲午夜片av大片| 久久人人爽人人| 国产成人亚洲综合| 亚洲最大成人网色| 日韩高清av一区二区三区| 欧美日本黄视频| 亚洲国产美女精品久久久久∴| 国产精品电影网| 国产精品99一区| 日韩国产精品亚洲а∨天堂免| 成人免费视频网| 久久精品99无色码中文字幕| 热re99久久精品国产66热| 国产欧美日韩高清| 97精品久久久中文字幕免费| 91欧美视频网站| 精品久久久久久久久久| 91精品视频免费| 中文字幕亚洲情99在线| 久久久天堂国产精品女人| 国自产精品手机在线观看视频| 精品久久国产精品| 亚洲最大的免费| 久久久久久成人| 日韩电影在线观看免费| 国产精品久久电影观看| 色婷婷综合久久久久| 中文字幕亚洲色图| 色综合91久久精品中文字幕| 久久99久久99精品免观看粉嫩| 欧美激情xxxxx| 亚洲国产精彩中文乱码av在线播放| 久久久精品网站| 精品国产欧美一区二区三区成人| 国产成人激情视频| 97国产suv精品一区二区62| 亚洲成年人在线| 久久韩国免费视频| y97精品国产97久久久久久| 琪琪亚洲精品午夜在线| 欧美疯狂做受xxxx高潮| 国产精品嫩草视频| 国产在线不卡精品| 91网站免费看| 久久精品在线播放| 中文字幕久久亚洲| 在线色欧美三级视频| 亚洲欧美国产一区二区三区| 午夜精品久久久久久久99黑人| 欧美精品在线免费观看| 亚洲国产精品女人久久久| 国产婷婷色综合av蜜臀av| 成人网在线免费看| 2023亚洲男人天堂| 日韩免费观看高清| 97在线视频免费播放| 亚洲精品视频二区| 热99精品只有里视频精品| 国产精品吹潮在线观看| 亚洲一区二区三区视频| 久久亚洲精品毛片| 日韩精品在线免费观看视频| 亚洲午夜av电影| 黄色成人在线免费| 亚洲18私人小影院| 亚洲午夜女主播在线直播| 国产69精品久久久久99| 中文字幕一区日韩电影| 九九热r在线视频精品| 国产美女扒开尿口久久久| 国产精品一久久香蕉国产线看观看| 亚洲桃花岛网站| 国产91精品不卡视频| 久久影视免费观看| 精品国内产的精品视频在线观看| 日韩黄色av网站| 亚洲成年人在线播放| 国产精品吴梦梦| 亚洲人成电影网| 国产精品久久久久久久久影视| 国产一区二区三区久久精品| 亚洲国产精品yw在线观看| 亚洲在线观看视频| 国产一区香蕉久久| www.99久久热国产日韩欧美.com| 成人欧美一区二区三区黑人孕妇| 欧美—级a级欧美特级ar全黄| 久热精品视频在线免费观看| 日韩精品视频中文在线观看| 在线观看精品自拍私拍| 欧美激情一级二级| 国产一级揄自揄精品视频| 伊人久久五月天| 精品国产鲁一鲁一区二区张丽| 国产999精品| 国产精品丝袜高跟| 日韩高清电影免费观看完整版| 久久久久www| 青青草原一区二区| 自拍偷拍亚洲精品| 日韩视频亚洲视频| 91精品国产91久久久久福利| 日韩av电影院| 亚洲精品一区中文字幕乱码| 午夜欧美大片免费观看| 国内精品美女av在线播放| 精品欧美国产一区二区三区| 98精品国产高清在线xxxx天堂|