zoukankan      html  css  js  c++  java
  • 牛客网Java刷题知识点之File对象常用功能:获取文件名称、获取文件路径、获取文件大小、获取文件修改时间、创建与删除、判断、重命名、查看系统根目录、容量获取、获取某个目录下内容、过滤器

      不多说,直接上干货!

    获取文件名称、获取文件路径、获取文件大小、获取文件修改时间

    FileMethodDemo.java

    package zhouls.bigdata.DataFeatureSelection.test;
    
    import java.io.File;
    import java.io.IOException;
    import java.text.DateFormat;
    import java.util.Date;
    
    public class FileMethodDemo {
        /**
         * @param args
         * @throws IOException 
         */
        public static void main(String[] args) throws IOException {
            /*
             * File对象的常见方法。
             * 1,获取。
             *         1.1  获取文件名称。
             *         1.2  获取文件路径。
             *         1.3  获取文件大小。
             *         1.4  获取文件修改时间。
            */
            getDemo();
    
        }
        
        public static void getDemo(){//获取
    //      File file = new File("D:\Code\eclipseMarsPaperCode\DataFeatureSelection\a.txt");//这是绝对路径。    File对象
            File file = new File("a.txt");//这是相对路径
            String name = file.getName();//获取文件名称
            String absPath = file.getAbsolutePath();//获取文件路径,是绝对路径。
            String path = file.getPath();//获取文件路径,是相对路径。
            long len = file.length();
            long time = file.lastModified();//获取文件修改时间
            Date date = new Date(time);
            DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG);
            String str_time = dateFormat.format(date);
            System.out.println("parent:"+file.getParent());
            System.out.println("name:"+name);
            System.out.println("absPath:"+absPath);
            System.out.println("path:"+path);
            System.out.println("len:"+len);
            System.out.println("time:"+time);
            System.out.println("str_time:"+str_time);
        }
    }

     创建与删除

    FileMethodDemo.java

    package zhouls.bigdata.DataFeatureSelection.test;
    
    import java.io.File;
    import java.io.IOException;
    import java.text.DateFormat;
    import java.util.Date;             
    
    public class FileMethodDemo{             
        /**
         * @param args
         * @throws IOException 
         */
        public static void main(String[] args) throws IOException { 
            /*       
             * File对象的常见方法。
             * 创建与删除。
             */
            createAndDeleteDemo();
        }
        
        public static void createAndDeleteDemo() throws IOException {                                             
            File dir = new File("D:\Code\eclipseMarsPaperCode\DataFeatureSelection\a.txt");
            boolean b = dir.mkdir();//make directory        
            System.out.println("b="+b);                                                                                      
            dir.mkdirs();//创建多级目录
            System.out.println(dir.delete());
            
            //文件的创建和删除。
            File file = new File("file.txt");
            
            /*
             * 和输出流不一样,如果文件不存在,则创建,如果文件存在,则不创建。 
             */
            boolean b1 = file.createNewFile();         
            System.out.println("b1="+b1); 
            
            boolean b2 = file.delete(); 
            System.out.println("b2="+b2);
        }
    }

     判断

     FileMethodDemo.java

    package zhouls.bigdata.DataFeatureSelection.test;
    
    import java.io.File;
    import java.io.IOException;
    import java.text.DateFormat;
    import java.util.Date;
    
    public class FileMethodDemo {
    
        /**
         * @param args
         * @throws IOException 
         */
        public static void main(String[] args) throws IOException {
            /*
             * File对象的常见方法。
             * 判断。
             */
            isDemo();
        }
        
        public static void isDemo() throws IOException{
            File f = new File("D:\Code\eclipseMarsPaperCode\DataFeatureSelection\a.txt");
            f.mkdir();
            f.createNewFile();
            
            boolean b = f.exists();        
            System.out.println("b="+b);
            // 最好先判断是否存在。 
            System.out.println(f.isFile());
            System.out.println(f.isDirectory());
        }
    }

    重命名

     FileMethodDemo.java

    package zhouls.bigdata.DataFeatureSelection.test;
    
    import java.io.File;
    import java.io.IOException;
    import java.text.DateFormat;
    import java.util.Date;
    
    public class FileMethodDemo {
        /**
         * @param args
         * @throws IOException 
         */
        public static void main(String[] args) throws IOException {
            /*
             * File对象的常见方法。
             * 4, 重命名    
             */
            renameToDemo();
            
        }
        
        public static void renameToDemo() {
            File f1 = new File("D:\Code\eclipseMarsPaperCode\DataFeatureSelection\a.txt");
            File f2 = new File("D:\Code\eclipseMarsPaperCode\DataFeatureSelection\b.txt");
            boolean b = f1.renameTo(f2);
            System.out.println("b="+b);
        }
    }

    系统根目录

     FileMethodDemo.java

    package zhouls.bigdata.DataFeatureSelection.test;
    
    import java.io.File;
    import java.io.IOException;
    import java.text.DateFormat;
    import java.util.Date;
    
    public class FileMethodDemo {
        /**
         * @param args
         * @throws IOException 
         */
        public static void main(String[] args) throws IOException {
            /*
             * File对象的常见方法。
             * 系统根目录
             */    
            listRootsDemo();
        }
        
        public static void listRootsDemo() {
            File[] files  = File.listRoots();        
            for(File file : files){
                System.out.println(file);
            }
        }
    }

     容量获取

     FileMethodDemo.java

    package zhouls.bigdata.DataFeatureSelection.test;
    
    import java.io.File;
    import java.io.IOException;
    import java.text.DateFormat;
    import java.util.Date;
    
    public class FileMethodDemo {
        /**
         * @param args
         * @throws IOException 
         */
        public static void main(String[] args) throws IOException {
            /*
             * File对象的常见方法。
             * 系统根目录和容量获取
             */    
            listRootsDemo();
        }
        
        public static void listRootsDemo() {
            File file = new File("D:\");
            System.out.println("getFreeSpace:"+file.getFreeSpace());
            System.out.println("getTotalSpace:"+file.getTotalSpace());
            System.out.println("getUsableSpace:"+file.getUsableSpace());
        }
    }

    获取目录内容

     FileListDemo.java

    package zhouls.bigdata.DataFeatureSelection.test;
    
    import java.io.File;
    
    
    public class FileListDemo {
        /**
         * @param args
         */
        public static void main(String[] args) {
            listDemo();
        }
        
        public static void listDemo() {
            File file = new File("D:\");
            /*
             * 获取当前目录下的文件以及文件夹的名称,包含隐藏文件。
             * 调用list方法的File对象中封装的必须是目录。
             * 否则会发生NullPointerException
             * 如果访问的系统级目录也会发生空指针异常。
             * 如果目录存在但是没有内容,会返回一个数组,但是长度为0.
             */
            String[] names = file.list();
            System.out.println(names.length);
            
            for(String name : names){
                System.out.println(name);
            }
        }
    }

     

    过滤器

    FileListDemo.java

    package zhouls.bigdata.DataFeatureSelection.test;
    
    import java.io.File;
    
    import zhouls.bigdata.DataFeatureSelection.test.FilterByHidden;
    import zhouls.bigdata.DataFeatureSelection.test.SuffixFilter;
    
    public class FileListDemo {
        /**
         * @param args
         */
        public static void main(String[] args) {
            listDemo();
            listDemo_2();
            listDemo_3();
            listDemo_4();
        }
        
        
        public static void listDemo_4() {    
            File dir = new File("D:\");
            String[] names = dir.list(new FilterByJava());//FilterByJava.java
            for(String name : names){
                System.out.println(name);
            }
        }
        
        
        public static void listDemo_3() {    
            File dir = new File("D:\");
            File[] files = dir.listFiles(new FilterByHidden());//FilterByHidden.java
            for(File file : files){
                System.out.println(file);
            }
        }
    
        public static void listDemo_2() {
            File dir = new File("D:\");
            String[] names = dir.list(new SuffixFilter(".txt"));
            for(String name : names){
                System.out.println(name);
            }
        }
        
        public static void listDemo() {
            File file = new File("D:\");
            /*
             * 获取当前目录下的文件以及文件夹的名称,包含隐藏文件。
             * 调用list方法的File对象中封装的必须是目录。
             * 否则会发生NullPointerException
             * 如果访问的系统级目录也会发生空指针异常。
             * 如果目录存在但是没有内容,会返回一个数组,但是长度为0.
             */
            String[] names = file.list();
            System.out.println(names.length);
            
            for(String name : names){
                System.out.println(name);
            }
        }
    }

    FilterByHidden.java

    package zhouls.bigdata.DataFeatureSelection.test;
    
    import java.io.File;
    import java.io.FileFilter;
    
    public class FilterByHidden implements FileFilter {
        public boolean accept(File pathname) {
            return !pathname.isHidden();
        }
    }

    FilterByJava.java

    package zhouls.bigdata.DataFeatureSelection.test;
    
    import java.io.File;
    import java.io.FilenameFilter;
    
    public class FilterByJava implements FilenameFilter {
        public boolean accept(File dir, String name) {
            System.out.println(dir+"---"+name);        
            return name.endsWith(".java");//name是每个文件名称 ,   .java即凡是.java文件全为真
        }
    }

    SuffixFilter.java

    package zhouls.bigdata.DataFeatureSelection.test;
    
    import java.io.File;
    import java.io.FilenameFilter;
    
    public class SuffixFilter implements FilenameFilter {
        private String suffix ;
        public SuffixFilter(String suffix) {
            super();
            this.suffix = suffix;
        }
        public boolean accept(File dir, String name) {
            return name.endsWith(suffix);
        }
    }
  • 相关阅读:
    stark
    MySQL与JDBC
    存储过程/视图/触发器
    MyCat部署运行(Windows环境)与使用步骤详解
    常用单词总结
    表单校验---validation检验
    jQuery简介
    javascript简单介绍
    HTML&&CSS
    消息队列Java的简单实现
  • 原文地址:https://www.cnblogs.com/zlslch/p/7580810.html
Copyright © 2011-2022 走看看