File类

File类的使用

File类用来代表文件和文件夹。主要作用有两个:获取文件或者文件夹的属性; 实现对文件、文件夹的创建和删除。 文件夹:file folder 目录:directory

使用File获取文件或文件夹属性:

package com.bisxt.file;

import java.io.File;
import java.util.Date;

/*
功能一:获取文件或文件夹的属性
 */
public class TestFile1 {
    public static void main(String[] args) {
        //创建一个File对象指向一个文件或者文件夹
        File file = new File("E:/softwareInstall/mysql");//这里正/、反\都行,但要注意转义字符\
        //获取文件或者文件夹的属性
        System.out.println(file.getName());
        System.out.println(file.getAbsolutePath());
        System.out.println(file.exists());
        System.out.println(file.length());
        System.out.println(file.isFile());
        System.out.println(file.isDirectory());
        //最后修改时间
        System.out.println(new Date(file.lastModified()).toLocaleString());
        System.out.println(file.canExecute());
        System.out.println(file.canRead());
        System.out.println(file.canWrite());

        System.out.println("======================================");
        File[] files=file.listFiles();
        System.out.println(files.length);
        for (int i = 0; i < files.length; i++) {
            System.out.print(new Date(files[i].lastModified()).toLocaleString()+"\t");//修改的时间
            if (files[i].isFile()) {
                System.out.print("文件\t\t\t");//类型
                System.out.print(files[i].length()+"\t\t");//长度
            } else {
                System.out.print("文件夹\t\t\t");
                System.out.print("\t\t");//长度
            }
            System.out.println(files[i].getName());
        }
    }
}
/*
output:
mysql
E:\softwareInstall\mysql
true
4096
false
true
2020-9-17 9:43:48
true
true
true
======================================
15
2020-9-17 9:37:25	文件夹					bin
2014-9-8 11:53:18	文件			17987		COPYING
2020-9-17 9:37:26	文件夹					data
2020-9-17 9:37:26	文件夹					docs
2020-9-17 9:37:27	文件夹					include
2020-9-17 9:37:28	文件夹					lib
2014-9-8 11:56:30	文件			4829		my-huge.ini
2014-9-8 11:56:30	文件			20238		my-innodb-heavy-4G.ini
2014-9-8 11:56:30	文件			4803		my-large.ini
2014-9-8 11:56:30	文件			4812		my-medium.ini
2014-9-8 11:56:30	文件			2921		my-small.ini
2010-4-1 17:58:20	文件			13128		my-template.ini
2020-9-17 9:43:48	文件			8901		my.ini
2014-9-8 11:53:18	文件			2496		README
2020-9-17 9:37:28	文件夹					share

 */

使用File类新建、删除文件和文件夹:

package com.bisxt.file;

import java.io.File;
import java.io.IOException;

/*
功能二:创建、删除文件或者文件夹
 */
public class TestFile2 {
    public static void main(String[] args) {
        File file = new File("g:/sxt/java/file/readme.txt");
        if (file.exists()) {
            file.delete();
        } else {
            //如果文件所在的文件夹不存在,需要先创建
            File dir = file.getParentFile();
            if (!dir.exists()){
                dir.mkdirs();//创建文件夹,可以是一个或者多个
            }
            try {
                file.createNewFile();//创建文件
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}

注意:

  • File不仅可以指向一个文件,也可以指向一个文件夹(作为一个文件对待)
  • File不能对文件的内容进行操作,需要借助IO流实现
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值