•File类
1.只用于表示文件(目录)的信息(名称、大小等),不能用于文件内容的访问。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
package cn.test; import java.io.File; import java.io.IOException; public class Demo16 { public static void main(String[] args) { File file = new File( "F:\\javaio" ); //文件(目录)是否存在 if (!file.exists()) { //创建目录 file.mkdir(); //file.mkdirs(); } else { //文件(目录)删除 file.delete(); } //是否是目录 如果是目录返回true,如果不是目录或目录不存在返回false System.out.println(file.isDirectory()); //是否是文件 System.out.println(file.isFile()); //File file2 = new File("F:\\java\\日记1.txt"); File file2 = new File( "F:\\javaio" , "日记2.txt" ); if (!file2.exists()) { try { //创建文件 file2.createNewFile(); } catch (IOException e) { e.printStackTrace(); } } else { file2.delete(); } System.out.println(file); System.out.println(file.getAbsolutePath()); //返回绝对路径 System.out.println(file.getName()); //目录名称 System.out.println(file2.getName()); //文件名称 System.out.println(file.getParent()); //父级目录的路径 System.out.println(file.getParent()); //父级目录的路径 } } |
2.遍历目录
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
package com.test.io; import java.io.File; import java.io.IOException; /** * File类的常用操作 * @author Administrator * */ public class FileUtils { /** * 列出指定目录下(包括其子目录)的所有文件 * @param dir * @throws IOException */ public static void listDirectory(File dir) throws IOException{ if (!dir.exists()) { throw new IllegalArgumentException( "目录" + dir + "不存在" ); } if (!dir.isDirectory()) { throw new IllegalArgumentException(dir + "不是目录" ); } /* String[] filenames = dir.list();//返回的是字符串数组,列出当前目录下的子目录和文件(不包含子目录下的内容) for (String string : filenames) { System.out.println(dir + "\\" +string); } */ //如果要遍历子目录下的内容,就需要构造File对象做递归操作 File[] files = dir.listFiles(); //返回的是直接子目录(文件)的抽象 if (files != null && files.length > 0 ) { for (File file : files) { if (file.isDirectory()) { //递归 listDirectory(file); } else { System.out.println(file); } } } } } |
以上所述是小编给大家介绍的Java IO流 File类的常用API实例,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
原文链接:http://www.cnblogs.com/tianxintian22/archive/2017/05/05/6813358.html