Java-file

Java EE开发中,实例化一个File对象:File file = new File(“path”)

当前系统下路径分隔符:File.separator(常量)

  1. 判断文件是否存在:file.exists()
  2. 创建文件:file.createNewFile()
  3. 删除文件:file.delete()
  4. 父路径:file.getParentFile()
  5. 创建多级目录:路径.mkdirs()
  6. 获取文件名:file.getName()
  7. 判断是否是文件夹:file.isDirectory()
  8. 判断是否是文件:file.isFile()
  9. 判断是否隐藏文件:file.isHidden()
  10. 查看最后一次修改日期 public long lastModified()(需要格式修改)
  11. 取得文件的大小:public long length()(返回字节)
  12. 文件重命名:file.renameTo(newFile)(newFile是绝对路径)
  13. 获取文件夹全部内容:File dirList[] = file.listFiles()
package com.joeaaa.file;

import org.w3c.dom.ls.LSOutput;

import java.io.File;
import java.io.IOException;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.Date;

/*
* 文件类操作
*/
public class FileTest1 {
    public static void main(String[] args) throws IOException {
        File file1 = new File("src"+File.separator+"com"+File.separator+"joeaaa"+File.separator+"a.txt");
        if(file1.exists()){
            file1.delete();
        }else {
            file1.getParentFile().mkdirs();
            file1.createNewFile();
        }
        System.out.println(file1.getParentFile()); // src/com/joeaaa

        System.out.println("最后一次修改: "+ new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
                .format(new Date(file1.lastModified()))); // 最后一次修改: 1970-01-01 08:00:00
        
        System.out.println("文件大小: "+new BigDecimal(file1.length() / (double) 1024/1024)
                .divide(new BigDecimal(1), 2, BigDecimal.ROUND_HALF_UP)
                .doubleValue()+"Mb"); // 文件大小: 0.0Mb
    }
}

注意:

  1. 文件创建和删除都会消耗一段时间,不是即时。(JVM和操作系统互动)
  2. 列出指定目录下的所有文件,如果列出的内容是文件夹,则需递归继续列出。(注意result == null的情况,会出现空指针异常)