📄 fileattr.java
字号:
package jfiledemo;import javax.swing.UIManager;import java.awt.*;import javax.swing.JTable;import java.awt.event.ActionEvent;import javax.swing.JTextField;import javax.swing.JScrollPane;import java.awt.event.WindowEvent;import javax.swing.JPanel;import java.io.File;import javax.swing.JFrame;import javax.swing.JButton;public class FileAttr { private boolean packFrame = false; ////构造方法 public FileAttr() { MainFrame frame = new MainFrame(); if (packFrame) { frame.pack(); } else { frame.validate(); } //居中处理 Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); Dimension frameSize = frame.getSize(); if (frameSize.height > screenSize.height) { frameSize.height = screenSize.height; } if (frameSize.width > screenSize.width) { frameSize.width = screenSize.width; } frame.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2); frame.setVisible(true); } //Main()方法 public static void main(String[] args) { new FileAttr(); }}class MainFrame extends JFrame { private JPanel contentPane; private BorderLayout borderLayout1 = new BorderLayout(); private JTextField jTextField1 = new JTextField(); private JScrollPane jScrollPane1 = new JScrollPane(); private JTable jTable1; private JButton jButton1 = new JButton(); File file; //构造窗体 public MainFrame() { enableEvents(AWTEvent.WINDOW_EVENT_MASK); try { jbInit();//调用jbInit()方法 } catch(Exception e) { e.printStackTrace(); } } //部件初始化 private void jbInit() throws Exception { contentPane = (JPanel) this.getContentPane(); jTextField1.setText("File or Dir Abstract Path"); //设置文本域的文本 contentPane.setLayout(borderLayout1); //设置布局 this.setSize(new Dimension(394, 164)); //设置尺寸 this.setTitle("JFileDemo"); //设置标题 jScrollPane1.setAutoscrolls(true); //自动滚屏 jButton1.setText("View"); //按钮名称 jButton1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { jButton1_actionPerformed(e); } }); contentPane.add(jButton1, BorderLayout.SOUTH); //加入按钮 contentPane.add(jTextField1, BorderLayout.NORTH); //加入文本域 contentPane.add(jScrollPane1, BorderLayout.CENTER); //加入ScrollPanel } //处理窗口事件 protected void processWindowEvent(WindowEvent e) { super.processWindowEvent(e); if (e.getID() == WindowEvent.WINDOW_CLOSING) { System.exit(0); } } Object[] getFileInfoType(){ return new Object[]{"Name","isFile","length","canRead","canWrite","lastMotified","isHidden"}; } Object[][] getFileInfo(File file){ File theFile = file; Object[][] data = new Object[1][7]; //用File类的各种方法获取文件属性,保存到data数组中 if (!theFile.exists()) return null; data[0][0] = theFile.getName(); data[0][1] = String.valueOf(theFile.isFile()); data[0][2] = String.valueOf(theFile.length()); data[0][3] = String.valueOf(theFile.canRead()); data[0][4] = String.valueOf(theFile.canWrite()); data[0][5] = String.valueOf(theFile.lastModified()); data[0][6] = String.valueOf(theFile.isHidden()); return data; } void jButton1_actionPerformed(ActionEvent e) { file = new File(this.jTextField1.getText()); this.jTable1 = new JTable(this.getFileInfo(file),this.getFileInfoType()); jScrollPane1.getViewport().add(jTable1, null); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -