• JAVA作业(5)


          通过近期学习,我学会了用程序来读取磁盘内的文件,并将它运行结果显示在自己做的GUI上面,在GUI里还做了一个下拉菜单,里面的写着不同文件的类型,暂时还没有完成通过选择不同类型文件使方框内筛选出各自的文件这个事件处理,但会继续跟进,此次代码如下

    import java.awt.BorderLayout;
    import java.awt.Color;
    import java.io.File;
    
    import javax.swing.JComboBox;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JList;
    import javax.swing.JPanel;
    import javax.swing.JScrollPane;
    import javax.swing.JTextArea;
    
    
    public class Fileutils {
    
        public static class FileUtils{
            /**
             * 列出指定目录下的所有文件和子目录的名称
             * @throws IllegalAccessException 
             */
        public static void listDirectory(File dir) throws IllegalAccessException{
            
            
            JFrame frm= new JFrame();
            frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            frm.setLayout(new BorderLayout());
            String[] likes ={".txt",".ppt",".jpg",".docx"};
            JComboBox l1=new JComboBox(likes);
            frm.add(l1, BorderLayout.NORTH);          
    
           
    //        JTextArea j1=new JTextArea();
    
            
            frm.setBounds(500,300,300,400);
            
         
            frm.setVisible(true);
            
            
            
            
            
            //判断File 对象dir 是否存在,使用File类的exists()方法
            if(!dir.exists()){
                //如果不存在,抛出异常
                throw new IllegalAccessException("目录"+dir+"不存在");
            }
            //判断dir是否是目录,使用File类的isDirectory()方法
            if(!dir.isDirectory()){
                //如果dir不是目录,抛出异常
                throw new IllegalArgumentException(dir+"不是目录");
                
            }
            
            //获得指定目录dir 下的文件及子目录并输出(1.list();2.listFiles())
            //使用list()方法来实现
            String[] fileNames = dir.list();
            //第一种输出方式
    //        for(String s : fileNames){
    //            j1.append(dir+"\"+s);
    //            j1.append("
    ");
    //            j1.setEditable(false);
    //            
    //            //System.out.println(dir+"\"+s);
    //        }    
             JList jl =new JList(fileNames);
             jl.setForeground(new Color(140,171,226));
             jl.setBackground(new Color(0,0,0));
             jl.setSelectionBackground(new Color(87,49,134));
             jl.setSelectionForeground(new Color(140,171,226));
             JScrollPane sp=new JScrollPane(jl);
             
    //            sp.setViewportView(jl);
    //             System.out.println();
            //使用ListFiles()方法实现只列出目录下的所有文件名称
    //        sp.setBackground(Color.YELLOW);
            frm.add(sp,BorderLayout.CENTER);
            
            //第二种输出方式
    //        File[] files=dir.listFiles();
    //        for(File file:files){
    //            //如果是文件,则输出
    //        
    //            if(file.isFile()){
    //                j1.append(dir+"\"+file);
    //                j1.append("
    ");
    //                j1.setEditable(false);    
    //            System.out.println(file);
    //        }
    //            }
    //        
        }                
        }
        /**
         * @param args
         */
    
    
        public static void main(String[] args) {
            
            // TODO Auto-generated method stub
            try {            
                FileUtils.listDirectory(new File("F:\壁纸"));
            } catch (IllegalAccessException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
    
        }
    
    }

    运行效果图如下:

  • 相关阅读:
    深入解析Mysql中事务的四大隔离级别及其所解决的读现象
    MySQL的B+Tree索引
    数据库中的乐观锁与悲观锁
    github 页面及功能介绍(转载)- 很建议看看
    python 修改文件的创建时间、修改时间、访问时间
    Go-常识补充-切片-map(类似字典)-字符串-指针-结构体
    Django-djangorestframework-渲染模块
    Django-djangorestframework-请求模块-获取请求参数
    Go-函数高级使用-条件分支-包管理-for循环-switch语句-数组及切片-与或非逻辑符
    Go-环境搭建-hello world-变量常量定义-函数使用基础
  • 原文地址:https://www.cnblogs.com/jizehui/p/5395100.html
Copyright © 2020-2023  润新知