Java笔记(5)——File类的基本使用

1.创建文件

需求:在E盘下,创建一个目录test;在test目录中创建一个名为log.txt的文件;
错误方式1:

package prac;

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

public class PracFile {

    public static void main(String[] args) throws IOException {
		File file = new File("e:/test/log.txt");
        boolean mkdirs = file.mkdirs();
        System.out.println("创建目录和文件:"+mkdirs);
     }
}

运行结果:e盘下,test1文件夹里的log1.txt不是文件,而是一个目录

错误方式2:

package prac;

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

public class PracFile {

    public static void main(String[] args) throws IOException {
//如果e盘下没有test2目录,执行createNewFile()时,会出现异常
        File file = new File("e:/test/log.txt");
        boolean newFile = file.createNewFile();
        System.out.println("创建目录和文件:"+newFile);
        }
}

因为此时在E盘下没有test目录时,运行会出现异常,截图如下:
在这里插入图片描述
正确的创建方式
方式1:

package prac;

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

public class PracFile {
    public static void main(String[] args) throws IOException {
    	//声明并创建目录对象
    	File file = new File("e:/test");
    	//在磁盘中,创建目录
        boolean mkdir = file.mkdir();
        System.out.println("创建目录:"+mkdir);
        //声明并创建文件对象
        File file1 = new File("e:/test/log.txt");
        //在磁盘中,创建文件
        boolean newFile = file1.createNewFile();
        System.out.println("创建文件:"+newFile);
        }
}

方式2:

package prac;

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

public class PracFile {
    public static void main(String[] args) throws IOException {
    	//声明并创建文件对象
    	File file = new File("e:/test/test2/log.txt");
        //获取父目录对象
        File parentFile = file.getParentFile();
        //磁盘中创建父目录
        boolean mkdirs = parentFile.mkdirs();
        //创建文件对象
        boolean newFile = file.createNewFile();
        }
}

2.常用方法

getName()
getParent()
getAbsolutePath()

package prac;

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

public class PracFile {

    public static void main(String[] args) throws IOException {
    	//含有目录的相对路径
        getRes("test/test.txt");
        //没有目录的相对路径
        getRes("test2.txt");
    }

    public static void getRes(String fileName) throws IOException {
        System.out.println("参数String,即抽象路径名:"+fileName);
        File file1 = new File(fileName);
        //获取【抽象路径名】中的文件名
        String name = file1.getName();
        System.out.println("getName()返回值为:"+name);
        //获取文件对应的绝对路径
        String absolutePath = file1.getAbsolutePath();
        System.out.println("getAbsolutePath()返回值为:"+absolutePath);
        //获取【抽象路径名】中的父目录信息,没有父目录,则返回null
        String parent = file1.getParent();
        System.out.println("getParent()返回值为:"+parent);
    }
}

控制台输出结果如下

参数String,即抽象路径名:test/test.txt
getName()返回值为:test.txt
getAbsolutePath()返回值为:E:\ideaPro4_1\CoreJava2\test\test.txt
getParent()返回值为:test
==============================================
参数String,即抽象路径名:test2.txt
getName()返回值为:test2.txt
getAbsolutePath()返回值为:E:\ideaPro4_1\CoreJava2\test2.txt
getParent()返回值为:null
==============================================
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值