基本信息:
import java.io.File;
public class Test {
public static void main(String[] args) {
File src = new File("F:\\workspace\\Eclipse_Java_workspace\\TableTennis\\src\\a.png");
System.out.println("名称:" + src.getName());
/**
* getPath方法:
* 如果给的是绝对路径,就返回绝对路径;
* 如果给的是相对路径,就返回相对路径。
*/
System.out.println("src路径:" + src.getPath());
File src2 = new File("a.png");
System.out.println("src2路径:" + src2.getPath());
System.out.println("src绝对路径:" + src.getAbsolutePath());//始终返回绝对路径
System.out.println("src2绝对路径:" + src2.getAbsolutePath());
System.out.println("src父路径:" + src.getParent());//它的上一级路径
System.out.println("src2父路径:" + src2.getParent());//没有就返回null
System.out.println("src父对象:" + src.getParentFile().getName());
}
}
输出结果:
名称:a.png
src路径:F:\workspace\Eclipse_Java_workspace\TableTennis\src\a.png
src2路径:a.png
src绝对路径:F:\workspace\Eclipse_Java_workspace\TableTennis\src\a.png
src2绝对路径:F:\workspace\Eclipse_Java_workspace\TableTennis\a.png
src父路径:F:\workspace\Eclipse_Java_workspace\TableTennis\src
src2父路径:null
src父对象:src
File类的getParent方法是把最后一个名称分隔符前面的部分拿出来。
getParentFile方法:返回他的父对象
查看文件的状态,它是用绝对路径进行判断的:
import java.io.File;
public class Test {
public static void main(String[] args) {
File src = new File("F:\\workspace\\Eclipse_Java_workspace\\TableTennis\\src\\a.png");
System.out.println("是否存在:" + src.exists());
System.out.println("是否文件:" + src.isFile());
System.out.println("是否文件夹:" + src.isDirectory());
System.out.println("-----------");
File src2 = new File("a.png");
System.out.println(System.getProperty("user.dir"));
System.out.println("是否存在:" + src2.exists());
System.out.println("是否文件:" + src2.isFile());
System.out.println("是否文件夹:" + src2.isDirectory());
System.out.println("-----------");
File src3 = new File("src\\a.png");
System.out.println("是否存在:" + src3.exists());
System.out.println("是否文件:" + src3.isFile());
System.out.println("是否文件夹:" + src3.isDirectory());
}
}
输出结果:
是否存在:true
是否文件:true
是否文件夹:false
-----------
F:\workspace\Eclipse_Java_workspace\TableTennis
是否存在:false
是否文件:false
是否文件夹:false
-----------
是否存在:true
是否文件:true
是否文件夹:false
length方法返回文件的字节数,如果是没有这个文件,则返回0:
import java.io.File;
public class Test {
public static void main(String[] args) {
File src = new File("F:/workspace/Eclipse_Java_workspace/TableTennis/src/a.png");
System.out.println("长度:" + src.length());
src = new File("F:/workspace/Eclipse_Java_workspace/TableTennis/src");
System.out.println("长度:" + src.length());
src = new File("F:/workspace/不存在的文件.txt");
System.out.println("长度:" + src.length());
}
}
输出结果:
长度:1721773
长度:4096
长度:0
createNewFile方法,用来创建文件,不存在才创建,创建成功返回true:
import java.io.File;
import java.io.IOException;
public class Test {
public static void main(String[] args) throws IOException{
File src = new File("F:/io.txt");
boolean flag = src.createNewFile();
System.out.println(flag);
flag = src.createNewFile();
System.out.println(flag);//前面创建好了,已经存在了,这里不能创建,所以返回false
}
}
输出结果:
true
false
createNewFile方法不能创建文件夹,这样子会创建一个空的没有后缀名的文件,而不是文件夹:
import java.io.File;
import java.io.IOException;
public class Test {
public static void main(String[] args) throws IOException{
File src = new File("F:/a");
}
}
创建结果:
创建了一个空文件a,而不是文件夹a
delete方法用来删除已经存在的文件,删除成功返回true:
import java.io.File;
import java.io.IOException;
public class Test {
public static void main(String[] args) throws IOException{
File src = new File("F:/a");
boolean flag = src.delete();
System.out.println(flag);
src = new File("F:/io.txt");
flag = src.delete();
System.out.println(flag);
}
}
输出结果:
true
true
con 、con3 等是操作系统的设备名,不能正确创建。