Java I/O —— File类

本文介绍Java IO包中的核心类及接口,包括File类的构造方法、文件创建与删除、目录创建等基本操作,并提供示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如果要进行所有的文件以及文件内容的开发操作,应该使用java.io包完成,而在此包中有五个核心类和一个接口
五个核心类:File , InputStream ,OutputStream , Reader ,Writer
一个核心接口:Serializable

File类

构造方法:

设置完整路径:public File(String pathname)大部分情况下使用此操作
设置父路径与子文件路径:public File(File parent,String child)在Android上使用

创建文件:

public boolean createNewFile()throws IOException

可能抛出异常的原因:
1. 目录不能访问
2. 文件重名或者文件名称错误

import java.io.File;

public class Demo {
    public static void main(String[] args) throws Exception{
        File file=new File("e:\\test.txt");
        System.out.println(file.createNewFile());
    }

}

注意:之所以将路径写成 e:\test.txt,而不是e:\test.txt是因为直接写\t会当做是制表符

此时运行,返回true,在E盘中即可找到test.txt文件

删除文件:

public boolean delete()
public class Demo1 {

    public static void main(String[] args) throws IOException {
        // TODO Auto-generated method stub
        File file=new File("e:\\test.txt");

        if(file.exists()){   //如果文件存在,执行文件的删除,否则执行文件的创建
            file.delete();
        }else{
            System.out.println(file.createNewFile());
        }

    }

}

判断文件是否存在:file.exists()

注意: 在写路径是,Windows系统使用“\”,而Linux使用的是“/”
解决方法:File类中有一个常量separator,来表示分隔符
因此可以写为:

"e:"+File.separate+"test.txt"

创建目录:

如果此时我们将路径改为

"e:"+File.separate+"hello"+File.separate"test.txt"

但是E盘中并不存在hello目录文件,此时我们来创建目录

找到父路径:

public File getParentFile();

注意:返回值是File,可以使用File中的方法
创建目录:

public boolean mkdir()  //创建一个目录
public boolean mkdirs()  //创建多个目录
    public static void main(String[] args) throws IOException {
        // TODO Auto-generated method stub
        File file=new File("e:"+File.separator+"hello"+File.separator+"src"+File.separator+"test.txt");

        if(!file.getParentFile().exists()){  //判断父路径是否存在

            file.getParentFile().mkdirs();   //创建父路径
        }
        if(file.exists()){   
            file.delete();
        }else{
            System.out.println(file.createNewFile());
        }

File中的一些类:

取得文件大小:

public long length() //按字节返回

判断是否是文件:

public boolean isFile()

判断是否是目录:

public boolean isDirectory()

得到文件路径:

public String getPath()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值