⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 demoreader.java

📁 基于netbeans的java桌面应用程序合集
💻 JAVA
字号:
/*
 * DemoReader.java
 *
 * Created on 2007年8月2日, 下午3:24
 */

package org.Adam;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import javax.swing.JOptionPane;
import javax.swing.filechooser.FileFilter;

/**
 *
 * @author  Administrator
 */
public class DemoReader extends javax.swing.JFrame {
    
    /** Creates new form DemoReader */
    public DemoReader() {
        this.initFileChooser();
        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=" 生成的代码 ">//GEN-BEGIN:initComponents
    private void initComponents() {
        jPanelNorth = new javax.swing.JPanel();
        jLabelFilePath = new javax.swing.JLabel();
        jTextFieldFilePath = new javax.swing.JTextField();
        jButtonOpen = new javax.swing.JButton();
        jScrollPaneCenter = new javax.swing.JScrollPane();
        jTextAreaContent = new javax.swing.JTextArea();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setTitle("\u6587\u672c\u9605\u8bfb\u5668");
        jLabelFilePath.setText("\u6587\u4ef6\u8def\u5f84\uff1a");

        jTextFieldFilePath.setEditable(false);

        jButtonOpen.setText("\u6253\u5f00");
        jButtonOpen.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButtonOpenActionPerformed(evt);
            }
        });

        org.jdesktop.layout.GroupLayout jPanelNorthLayout = new org.jdesktop.layout.GroupLayout(jPanelNorth);
        jPanelNorth.setLayout(jPanelNorthLayout);
        jPanelNorthLayout.setHorizontalGroup(
            jPanelNorthLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(jPanelNorthLayout.createSequentialGroup()
                .add(27, 27, 27)
                .add(jLabelFilePath)
                .add(23, 23, 23)
                .add(jTextFieldFilePath, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 213, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                .add(jButtonOpen)
                .addContainerGap(325, Short.MAX_VALUE))
        );
        jPanelNorthLayout.setVerticalGroup(
            jPanelNorthLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(jPanelNorthLayout.createSequentialGroup()
                .add(27, 27, 27)
                .add(jPanelNorthLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
                    .add(jPanelNorthLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
                        .add(jTextFieldFilePath, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                        .add(jButtonOpen))
                    .add(jLabelFilePath))
                .addContainerGap(53, Short.MAX_VALUE))
        );
        getContentPane().add(jPanelNorth, java.awt.BorderLayout.NORTH);

        jScrollPaneCenter.setBorder(javax.swing.BorderFactory.createTitledBorder("\u663e\u793a\u6587\u672c\u5185\u5bb9"));
        jTextAreaContent.setColumns(20);
        jTextAreaContent.setEditable(false);
        jTextAreaContent.setLineWrap(true);
        jTextAreaContent.setRows(5);
        jTextAreaContent.setWrapStyleWord(true);
        jScrollPaneCenter.setViewportView(jTextAreaContent);

        getContentPane().add(jScrollPaneCenter, java.awt.BorderLayout.CENTER);

        pack();
    }// </editor-fold>//GEN-END:initComponents

    private void jButtonOpenActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonOpenActionPerformed
// TODO 将在此处添加您的处理代码:
        fileChooser.showOpenDialog(this);
        File selectFile=fileChooser.getSelectedFile();
        if(selectFile==null){
            JOptionPane.showMessageDialog(this,"你没有选择要打开的文件!","提示:",JOptionPane.INFORMATION_MESSAGE);
            return;
        }else{
            int choose=JOptionPane.showConfirmDialog(this,"你确定要打开文件吗?","请确认",JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE);
            if(choose==JOptionPane.NO_OPTION){
                JOptionPane.showMessageDialog(this,"你取消了打开文件","提示:",JOptionPane.INFORMATION_MESSAGE);
                return;
            }else{
                String tempString="";
                BufferedReader buffRead=null;
                String pathName=selectFile.getPath();
                this.jTextFieldFilePath.setText(pathName);
                try{
                    int size=(int)selectFile.length();
                    byte[] tempArray=new byte[size];
                    FileInputStream fin=new FileInputStream(selectFile);
                    fin.read(tempArray);
                   tempString=new String(tempArray);
                    this.jTextAreaContent.setText(tempString);
                    
                }catch(IOException e){
                    e.printStackTrace();
                }
            }
        }
    }//GEN-LAST:event_jButtonOpenActionPerformed
    
    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new DemoReader().setVisible(true);
            }
        });
    }

    private javax.swing.JFileChooser fileChooser = new javax.swing.JFileChooser();

    public void initFileChooser() {
        FileFilter [] fileFilter=fileChooser.getChoosableFileFilters();
        int fSize=fileFilter.length;
        for(int i=0;i<fSize;i++){
            fileChooser.removeChoosableFileFilter(fileFilter[i]);
        }
        fileChooser.addChoosableFileFilter(new TxtFliter());
        fileChooser.addChoosableFileFilter(new JavaFliter());
    }
    
    // 变量声明 - 不进行修改//GEN-BEGIN:variables
    private javax.swing.JButton jButtonOpen;
    private javax.swing.JLabel jLabelFilePath;
    private javax.swing.JPanel jPanelNorth;
    private javax.swing.JScrollPane jScrollPaneCenter;
    private javax.swing.JTextArea jTextAreaContent;
    private javax.swing.JTextField jTextFieldFilePath;
    // 变量声明结束//GEN-END:variables
    
}



class TxtFliter extends javax.swing.filechooser.FileFilter {
    boolean flag;
    public boolean accept(File file){
        if(file.getName().toLowerCase().endsWith(".txt")){
            flag=true;
        }else if(file.isDirectory()){
            flag=true;
        }else{
            flag=false;
        }
         return flag;
    }
    public String getDescription(){
        return "TXT文件";
    }
}



class JavaFliter extends javax.swing.filechooser.FileFilter {
    boolean flag;
    public boolean accept(File file){
        if(file.getName().toLowerCase().endsWith(".java")){
            flag=true;
        }else if(file.isDirectory()){
            flag=true;
        }else{
            flag=false;
        }
         return flag;
    }
    public String getDescription(){
        return "Java文件";
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -