zoukankan      html  css  js  c++  java
  • Java学习之路(十一):IO流<前戏>

    File类的概述和构造方法

    构造方法:

    • File(String pathname):根据一个路径得到File对象
    • File(String parent,String child):根据一个目录和一个子文件/目录 得到File对象
    • File(File parent,String child):根据一个父File对象和一个子文件/目录得到File对象

    File更应该叫做一个路径,文件 路径  或者  文件夹  路径

    File是指文件或者目录路径名的抽象表示形式

    创建功能:

    • public boolean createNewFile():创建文件,如果存在这样的文件,就不会创建了
    • public boolean mkdir():创建一个文件夹(目录),如果存在这样的文件夹就不再创建了
    • public boolean mkdir():迭代着创建文件夹,多层文件夹嵌套创建

    重名名和删除功能:

    • public boolean renameTo(File dest):把文件重名为指定的文件路径(和Linux一样,重名名其实就是剪贴粘贴)
    • public boolean delete():删除文件或者文件夹(这种删除是不经过回收站的)

    判断功能:

    • public boolean isDirectory():判断是否是空目录
    • public boolean isFile():判断是否是文件
    • public boolean exists():判断是否存在
    • public boolean canRead():判断是否可读
    • public boolean canWrite():判断是否可写
    • public boolean isHidden():判断是否隐藏

    获取功能:

    • public String getAbsolutePath():获取绝对路径
    • public String getPath():获取路径
    • public String getName():获取名称
    • public long length():获取长度(文件的字节数)
    • public long lastModified():获取最后一次的修改时间,毫秒值
    • public String[] list():获取指定目录下的所有文件或者文件夹的名称 数组
    • public File[] listFile():获取指定目录下的所有文件或者文件夹的File数组

    我们自己实现一个文件名过滤器

    package null08012133;
    
    import java.io.File;
    
    public class Demo01 {
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            File file = new File("C:/");
            File[] fileList = file.listFiles();
            for(File fileObj:fileList){
                if(fileObj.isFile()&&fileObj.getName().endsWith(".sys")){
                    System.out.println(fileObj.getName());
                }
            }
            
        }
    
    }

    使用内置的一些方法进行判断

    package null08012133;
    
    import java.io.File;
    import java.io.FilenameFilter;
    
    public class Demo02 {
    
        public static void main(String[] args){
            File file = new File("C:/");
            String[] fileNames = file.list(new FilenameFilter(){
    
                @Override
                public boolean accept(File dir, String name) {
                    // TODO Auto-generated method stub
                    File f = new File(dir,name);
                    return f.isFile()&&name.endsWith(".sys");
                }
            });
            for(String fileName:fileNames){
                System.out.println(fileName);
            }
        }
        
    }
  • 相关阅读:
    用Webshell直接杀入内网
    别再说找不到Python练手项目了,这80个拿去过冬
    亲爱的,我是一条Linux运维技术学习路径呀。
    一份C++学习资源,咬牙切齿地好用呀
    技术变现,到底怎么变?本文或能成为你的“点金石”
    40个大数据学习资源,个个是干货,最后7个太给力
    零基础如何学好数据分析?
    8个程序员专用软件/网站,个个是神器,第一个最惊喜......
    如何写一个优秀的GitHub项目README文档?
    超全PHP学习资源整理:入门到进阶系列
  • 原文地址:https://www.cnblogs.com/smiling-crying/p/9404363.html
Copyright © 2011-2022 走看看