Java进阶之旅第九天
File
创建File对象
| 方法 | 说明 |
|---|
| public File(String pathname) | 根据文件路径创建文件对象 |
| public File(String parent,String child) | 根据父路径名字符串和子路径字符串创建文件对象 |
| public File(File parent, String child) | 根据父路径文件对象和子路径字符串创建对象 |
代码
String srcFilePath = "..\\test\\a.txt";File f1 = new File(srcFilePath);System.out.println(f1);String srcParentFP = "..\\test\\";String srcChildFP = "a.txt";File f2 = new File(srcParentFP,srcChildFP);System.out.println(f2);String srcParentFP2 = "..\\test\\";File fileParent = new File(srcParentFP2);String srcChildFP2 = "a.txt";File f3 = new File(fileParent,srcChildFP2);System.out.println(f3);
结果
..\test\a.txt
..\test\a.txt
..\test\a.txt
File中常见的成员方法
判断/获取
| 方法 | 说明 |
|---|
| public boolean isDirectory() | 判断此路径名表示的File是否为文件夹 |
| public boolean isFile() | 判断此路径名表示的File是否为文件 |
| public boolean exists() | 判断此路径名表示的File是否存在 |
| public long length() | 返回文件的大小(字节数量) |
| public String getAbsolutePath() | 返回文件的绝对路径 |
| public String getPath() | 返回定义文件时使用的路径 |
| public String getName() | 返回文件的带后缀的名称 |
| public long lastModified() | 返回文件的最后修改时间(时间毫秒值 |
创建/删除
| 方法 | 说明 |
|---|
| public boolean createNewFile() | 创建一个新的空文件 |
| public boolean mkdir() | 创建单级文件夹 |
| public boolean mkdirs() | 创建多级文件夹 |
| public boolean delete() | 删除文件,空文件夹 |
- 细节:
delete()删除不会回收到垃圾站createNewFile()当前路径文件存在,返回false
获取并遍历(重要)
| 方法 | 说明 |
|---|
| public File[] listFiles() | 获取当前该路径下所有内容 |
-
细节:
- 路径不存在时,返回null
- 路径是文件时,返回null
- 文件指向空文件夹时,返回长度为0的数组
- 隐藏文件也会被获取
- 路径需要权限才可以访问时,返回null
-
代码
File Pfile = new File("test");File[] files = Pfile.listFiles();for (File file : files) {System.out.println(file.getName());if (file.isDirectory()){File[] files2 = file.listFiles();if (files2 != null) {PrintMkdir(files2);}}}public static void PrintMkdir(File[] files){for (File file : files) {System.out.println(file.getName());}}