当前位置: 首页 > news >正文

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);
    }
}



相关文章:

  • 查看httpd状态
  • js中如何判断引用值为数组(几种不同方式的详解)
  • 项目代码重用
  • js中数组去重的几种实现方式(区别)
  • java创建文件和目录
  • JS For循环中嵌套setTimeout()方法的理解
  • ubuntu下zabbix服务器监控工具部署
  • 前端性能优化-图片
  • MapString, String循环遍历的方法
  • 快速掌握js中闭包的理解与应用(面试中如何回答闭包)
  • inkspace 0.92 安装 总结
  • js中原型,原型链的理解
  • CSS水平、垂直居中问题.md
  • Vue3写法总结
  • [python] os.path说明
  • 230. Kth Smallest Element in a BST
  • 8年软件测试工程师感悟——写给还在迷茫中的朋友
  • CentOS从零开始部署Nodejs项目
  • CNN 在图像分割中的简史:从 R-CNN 到 Mask R-CNN
  • Effective Java 笔记(一)
  • FineReport中如何实现自动滚屏效果
  • Java程序员幽默爆笑锦集
  • Linux CTF 逆向入门
  • Markdown 语法简单说明
  • SpiderData 2019年2月16日 DApp数据排行榜
  • Tornado学习笔记(1)
  • 从零搭建Koa2 Server
  • 关于Android中设置闹钟的相对比较完善的解决方案
  • 前嗅ForeSpider教程:创建模板
  • 如何在GitHub上创建个人博客
  • 使用Tinker来调试Laravel应用程序的数据以及使用Tinker一些总结
  • 赢得Docker挑战最佳实践
  • C# - 为值类型重定义相等性
  • Hibernate主键生成策略及选择
  • k8s使用glusterfs实现动态持久化存储
  • #14vue3生成表单并跳转到外部地址的方式
  • (二) Windows 下 Sublime Text 3 安装离线插件 Anaconda
  • (黑马C++)L06 重载与继承
  • (六)库存超卖案例实战——使用mysql分布式锁解决“超卖”问题
  • (免费分享)基于springboot,vue疗养中心管理系统
  • (转)Windows2003安全设置/维护
  • (转)负载均衡,回话保持,cookie
  • (转)如何上传第三方jar包至Maven私服让maven项目可以使用第三方jar包
  • ****Linux下Mysql的安装和配置
  • .NET Compact Framework 多线程环境下的UI异步刷新
  • .Net Core与存储过程(一)
  • .NET Micro Framework初体验(二)
  • @for /l %i in (1,1,10) do md %i 批处理自动建立目录
  • @ModelAttribute 注解
  • @Transactional类内部访问失效原因详解
  • @Transient注解
  • [ 常用工具篇 ] POC-bomber 漏洞检测工具安装及使用详解
  • []我的函数库
  • [8-23]知识梳理:文件系统、Bash基础特性、目录管理、文件管理、文本查看编辑处理...
  • [BZOJ] 2006: [NOI2010]超级钢琴