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());
}
}