阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

文件(File)

112次阅读
没有评论

共计 2694 个字符,预计需要花费 7 分钟才能阅读完成。

1、File 类概述

文件和目录路径名的抽象表示形式

2、File 类构造方法

public File(String pathname): 根据一个路径得到 File 对象
public File(String parent,String child): 根据一个目录和一个子文件 / 目录得到 File 对象
public File(File parent,String child): 根据一个父 File 对象和一个子文件 / 目录得到 File 对象

演示代码

public static void main(String[] args) {// File(String pathname):根据一个路径得到 File 对象 // 把 e:\\demo\\a.txt 封装成一个 File 对象 File file = new File("E:\\demo\\a.txt"); // File(String parent, String child): // 根据一个目录和一个子文件 / 目录得到 File 对象 File file2 = new File("E:\\demo", "a.txt"); // File(File parent, String child): // 根据一个父 File 对象和一个子文件 / 目录得到 File 对象 File file3 = new File("e:\\demo"); File file4 = new File(file3, "a.txt"); // 以上三种方式其实效果一样 }

3、File 类的成员方法

​ (a) 创建功能
​ public boolean createNewFile()
​ public boolean mkdir()
​ public boolean mkdirs()

// 需求:我要在 e 盘目录下创建一个文件夹 demo File file = new File("e:\\demo"); System.out.println("mkdir:" + file.mkdir()); // 需求: 我要在 e 盘目录 demo 下创建一个文件 a.txt File file2 = new File("e:\\demo\\a.txt"); System.out.println("createNewFile:" + file2.createNewFile()); // 创建多级文件夹 File file7 = new File("e:\\aaa\\bbb\\ccc\\ddd"); System.out.println("mkdirs:" + file7.mkdirs());

​ (b) 删除功能
​ public boolean delete()

// 删除功能:我要删除 a.txt 这个文件 File file3 = new File("a.txt"); System.out.println("delete:" + file3.delete());

注意:
A: 如果你创建文件或者文件夹忘了写盘符路径,那么,默认在项目路径下。
B:Java 中的删除不走回收站。
C: 要删除一个文件夹,请注意该文件夹内不能包含文件或者文件夹

​ ©重命名功能
​ public boolean renameTo(File dest)

public static void main(String[] args) {// 创建一个文件对象 File file = new File("林青霞.jpg"); // 需求:我要修改这个文件的名称为 "东方不败.jpg" File newFile = new File("东方不败.jpg"); System.out.println("renameTo:" + file.renameTo(newFile)); // 剪贴 File file2 = new File("东方不败.jpg"); File newFile2 = new File("e:\\ 林青霞.jpg"); System.out.println("renameTo:" + file2.renameTo(newFile2)); }

注意事项:

​ 如果路径名相同,就是改名。

​ 如果路径名不同,就是改名并剪切。

相对路径和绝对路径:

​ 路径以盘符开始:绝对路径 c:\a.txt

​ 路径不以盘符开始:相对路径 a.txt

(d) 判断功能

​ public boolean isFile():是否是文件

​ public boolean isDirectory():是否是文件夹

​ public boolean exists():是否存在

​ public boolean canRead():是否可读

​ public boolean canWrite():是否可写

​ public boolean isHidden():是否隐藏

​ (e) 基本获取功能

​ public String getAbsolutePath()
​ public String getPath()
​ public String getName()
​ public long length()
​ public long lastModified()

public static void main(String[] args) {// 创建文件对象 File file = new File("demo\\test.txt"); System.out.println("getAbsolutePath:" + file.getAbsolutePath()); //getAbsolutePath:E:\javaSE\File\demo\test.txt System.out.println("getPath:" + file.getPath()); //demo\test.txt System.out.println("getName:" + file.getName()); //test.txt System.out.println("length:" + file.length()); //length:5(文件大小,字节数) System.out.println("lastModified:" + file.lastModified()); // 文件的最后修改时间:lastModified:1444324936634(毫秒值) // 把最后修改时间转成日期形式 // 1416471971031 Date d = new Date(1416471971031L); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String s = sdf.format(d); System.out.println(s);//2019-11-20 16:26:11 }

​ (f) 高级获取功能
​ public String[] list(): 获取某个路径下所有的文件、文件夹的名称
​ public File[] listFiles():获取某个路径下所有的文件对象(文件:文件夹 + 文件夹)

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-06-06发表,共计2694字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中