超牛牪犇Java之File类

File类

一.

类中封装的是操作文件或文件夹的方法

file

1.表示一个文件

2.表示一个文件夹

3.表示一个文件的路径

file类中的静态变量

路径分隔符:

Windows:   " ; "

Mac:    " : "

分割符:

Windows:   " \ "

Mac:    " / "

二.

绝对路径:

该文件 在你当前硬盘上的路径(唯一的)如:

 /Users/Commander/Desktop/test
绝对路径是以斜杠开头的

相对路径:

相对路径必须要有参照物(参照物是你的工程)

不以斜杠开头

file的构造方法:

1.判断该文件是否存在

boolean b1 = file1.exists();
System.out.println(b1);

2.打印绝对路径

System.out.println(file1.getAbsolutePath());

3.利用父子路径创建file对象

File file2 = new File("/Users/Commander/Desktop", "test");
boolean b2 = file2.exists();

4.利用一个文件和一个路径 创建file对象

String child = "test";
File parent = new File("/Users/Commander/Desktop");
File file3 = new File(parent, child);
boolean b3 = file3.exists();

5.创建文件

只能创建文件 没写文件的后缀(如haha.txt) 创建的也是文件

private static void fun3() throws IOException {
    File file = new File("/Users/Commander/Desktop/test/haha");
    boolean b = file1.createNewFile();
    System.out.println(b1);
}

抛出IOException异常 是因为创建文件的路径可能不存在

6.获取文件名的方法

直接打印 打印的是文件的绝对路径 (因为tostring被重写了)

System.out.println(file);

7.创建文件夹

(1).mkdir 只能创建一层的文件夹 不能创建多级文件夹

File  file2 = new File("/Users/Commander/Desktop/test/c");
boolean b2 = file2.mkdir();

(2).mkdirs  可以创建多级文件夹

boolean b3 = file2.mkdirs();

8.判断是否是文件或文件夹

文件:

boolean b1 = file.isFile();

文件夹:

boolean b2 = file1.isDirectory();

判断是否是隐藏文件;

boolean b3 = file1.isHidden();

9.删除方法

(慎重使用 不会经过你的回收站 很难恢复)

并且只能删除空文件夹 文件夹内不能有文件

File file = new File("/Users/Commander/Desktop/test/a");
boolean b1 = file.delete();

10.获取文件夹下的所有文件

(1).以字符串数组形式获取

获取的是文件名 并且只获取第一级文件名

String[] list = file1.list();
for (String string : list) {
	System.out.println(string);
}

遍历结果中的.DS_Store是隐藏文件

(2).以文件数组形式获取

获取的是绝对地址

File[] listFiles = file1.listFiles();
for (File file : listFiles) {
	System.out.println(file);
}



  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值