zoukankan      html  css  js  c++  java
  • 英汉小词典 java随机存取文件流应用 version1.0

    package jnet;
    //英汉小词典  随机存取文件   需改进 version1.0
    import java.io.*;
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;

    public class F extends JFrame implements ActionListener{
        File file = new File("英汉小词典.txt");
        JButton writeBtn = new JButton("录入");
        JButton viewBtn = new JButton("显示");
        JTextField word = new JTextField(8);
        JTextField note = new JTextField(8);
        JTextArea txt = new JTextArea(20,30);
        JPanel p1 = new JPanel();
        JPanel p2 = new JPanel();
        
        F(){
            setTitle("英汉小词典");
            setBounds(100,50,400,250);
            setVisible(true);
            setDefaultCloseOperation(EXIT_ON_CLOSE);
            
            add(p1,"North");
            p1.setBackground(Color.cyan);
            p1.add(new JLabel("输入单词"));
            p1.add(word);
            p1.add(new JLabel("输入解释"));
            p1.add(note);
            p1.add(writeBtn);
            writeBtn.addActionListener(this);
            
            add(p2,"Center");
            p2.add(viewBtn);
            p2.add(txt);
            viewBtn.addActionListener(this);
            validate();
        }
        @Override
        public void actionPerformed(ActionEvent e) {
            if (e.getSource()==writeBtn) {
                inputWord();
            }
            if (e.getSource()==viewBtn) {
                viewWord();
            }
        }
        
        //显示汉语解释的方法
        public void viewWord()
        {
            int number=1;
            try {
                @SuppressWarnings("resource")
                RandomAccessFile infile = new RandomAccessFile(file, "rw");
                @SuppressWarnings("unused")
                String 单词 =null;
                while((单词=infile.readUTF())!=null)
                {
                    txt.append("\n"+number+单词);
                    txt.append(" " + infile.readUTF());  //读取汉语解释
                    txt.append("\n--------------------");
                    number++;
                }
                infile.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        //处理输入的单词的
        public void inputWord()
        {  
            try {
                RandomAccessFile outfile = new RandomAccessFile(file, "rw");
                if (file.exists()) {
                    //实现指针跳到文件末尾
                    long length = file.length();
                    outfile.seek(length);
                }
                outfile.writeUTF("单词:"+word.getText());
                outfile.writeUTF("解释:"+note.getText());
                outfile.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        public static void main(String[] args) {
            new F();
        }
    }

  • 相关阅读:
    ubuntu14.04下安装cudnn5.1.3,opencv3.0,编译caffe及配置matlab和python接口过程记录
    py-faster-rcnn(running the demo): ubuntu14.04+caffe+cuda7.5+cudnn5.1.3+python2.7环境搭建记录
    spring配置hibernate的sessionFactory
    Java编程题
    java编写encode方法和decode方法,机试题
    港交所OMD-C对接笔记
    基于百词斩和扇贝单词的背单词APP软件测试
    C++实现对文件中各单词词频的统计及其代码优化
    C++如何获取当前路径下所有文件的文件名
    【信号与线性系统】为什么求解零输入响应时转移算子H(p)不能约分,但计算单位冲激响应时却可以约分?
  • 原文地址:https://www.cnblogs.com/nanfengnan/p/13849636.html
Copyright © 2011-2022 走看看