Java文件的读写

文件与流

在实际生活中,我们总要对文件进行操作,Java提供了流可以帮助我们读写文件;
下面是常用的流类型结构图:
字节与流
在对文件的读写操作中,字节流可用于读写二进制文件,字符流用于读写文本文件。所谓二进制文件,指文件无字符编码格式,均由字节(Byte)组成,图片文件、word文档等均为二进制文件。文本文件是一种特殊的二进制文件,也由字节组成,但需要通过特定的字符编码格式读取或写入,否则会出现乱码,后缀名为txt的文件就是典型的文本文件。

File类

File类的对象表示磁盘、目录、文件。其对象的属性包含了文件或目录的相关信息,如名称、长度、所含文件个数等,其方法可以完成对文件或目录的常用管理操作,如创建、删除等。
下面是File类的常用方法:

方法名称 参数 作用 返回值
构造方法 String 传入文件或目录名,获取对应的文件或目录对象
canRead 文件是否可读 boolean:是否可读
canWrite 文件是否可写 boolean:是否可写
delete 删除文件或目录 boolean:操作结果
exists 文件或目录是否存在 boolean:是否存在
getAbsolutePath 获取绝对路径 String:绝对路径
getFreeSpace 获取分区的剩余空间 long:字节数量
getTotalSpace 获取分区的总空间 long:字节数量
getUsableSpace 获取分区的已用空间 long:字节数量
getName 获取文件或目录的名称 String:文件或目录名称
isDirectory 是否为目录 boolean:是否为目录
isFile 是否为文件 boolean:是否为文件
isHidden 是否为隐藏文件或目录 boolean:是否隐藏
lastModified 获取文件最后修改时间 long:最后修改时间
length 获取文件长度 long:字节数量
listFiles 获取目录的子目录、文件 File[]:子目录和子文件
listRoots 获取所有磁盘分区 File[]:磁盘分区
mkdir 创建目录 boolean:是否创建成功
mkdirs 创建多级目录 boolean:是否创建成功

File类的常用方法

列出磁盘分区和D盘目录

package io;

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

/**
 * @author Una
 * @date 2022/7/20 11:17
 * @description:
 */


public class FileTest {
   
    public static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    public static void main(String[] args) {
   
        /**
         *public static File[] listRoots() {
         *         return fs.listRoots();
         * }
         */
        // 获取当前文件系统的所有磁盘分区
        File[] disks=File.listRoots();
        for (int i = 0; i < disks.length; i++) {
   
            File disk = disks[i];
            System.out.println(disk.getAbsolutePath() + "盘\t总空间:"
                    + disk.getTotalSpace() / 1024 / 1024 / 1024 + "G\t剩余空间"
                    + disk.getFreeSpace() / 1024 / 1024 / 1024 + "G");
        }
  • 4
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值