File:抽象的描述了磁盘路径(创建一个具体的对象==>指定路径 但是该路径的文件或者文件夹不一定在磁盘真的存在!!!)
一个File对象就是一个具体的文件或者目录(目的:指定文件或文件夹保存的路径)
如何得到一个具体的File对象?? ==》通过构造方法
File(String pathname):通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。 即给一个路径
File(String parent, String child):根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。
File(File parent, String child):根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。
使用File在磁盘中,创建文件,及文件夹:
boolean createNewFile() :创建文件 返回值表示是否创建成功
①当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件
②如果路径不存在,就不能创建文件
boolean mkdir() :创建此抽象路径名指定的目录(文件夹) 注意:如果父路径不存在,则不会创建文件夹
boolean mkdirs() :如果父路径不存在,会自动先创建路径所需的文件夹,即会先创建父路径内容再创建文件夹
boolean isDirectory() :判断是否是一个目录
boolean isFile() :判断是否是一个文件
boolean exists() :判断此抽象路径名表示的文件或目录是否存在
ex1:创建File对象指定文件或文件夹所在路径
/**
* File(String pathname):通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。 即给一个路径
* File(String parent, String child):根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。
* File(File parent, String child):根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。
* @author 郑清
*/
public class Demo {
public static void main(String[] args) {
File file = new File("D:/1/1.txt");//创建了一个对象 ==> 描述了一个路径
System.out.println(file);//D:\1\1.txt
File file2 = new File("D:/1/","/1.txt");
System.out.println(file2);//D:\1\1.txt
File parent = new File("D:/1/");
File file3 = new File(parent, "/1.txt");
System.out.println(file3);//D:\1\1.txt
//File还有字段[实际开发中路径,应该用与系统相关的分隔符]
System.out.println(File.pathSeparator);//;
System.out.println(File.pathSeparatorChar);//;
System.out.println(File.separator);// \
}
}
运行结果图:
ex2:创建文件及文件夹
/**
* 使用File在磁盘中,创建文件,及文件夹:
* boolean createNewFile() :创建文件 返回值表示是否创建成功
* ①当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件
* ②如果路径不存在,就不能创建文件
* boolean mkdir() :创建此抽象路径名指定的目录(文件夹) 注意:如果父路径不存在,则不会创建文件夹
* boolean mkdirs() :如果父路径不存在,会自动先创建路径所需的文件夹
*
* boolean isDirectory() :判断是否是一个目录
* boolean isFile() :判断是否是一个文件
* boolean exists() :判断此抽象路径名表示的文件或目录是否存在
* @author 郑清
*/
public class Demo {
public static void main(String[] args) throws IOException{
//创建文件:
File file = new File("D:/1/1.txt");
System.out.println(file.createNewFile());//注意:文件所在路径(在这里的路径指:D:/1)必须存在 才能创建文件(1.txt)!!
//创建文件夹:
File file2 = new File("D:/1/新建文件夹");
System.out.println(file2.mkdir());//如果没有父路径,不会报错,但不会创建文件夹
//file2.mkdirs();//如果父路径不存在,会自动先创建路径所需的文件夹
//判断文件是否存在以及文件类型
//File file3 = new File("D:/1/新建文件夹");
File file3 = new File("D:/1/1.txt");
System.out.println(file3.exists());//判断路径D:/1下是否存在该文件1.txt 或 新建文件夹
System.out.println(file3.isDirectory());//判断file3对象指向的路径是否是目录(在这里就是判断D:/1下的 新建文件夹 是否是文件夹 是就返回true)
System.out.println(file3.isFile());//判断路径D:/1下的1.txt是否是文件类型
}
}
=============================下面分别举例来看看创建文件和文件夹==============================
ex3:创建文件
ex4:创建文件夹
mkdir:必须要有父路径才能创建文件夹
mkdirs:如果父路径不存在,则会先自动创建父路径内容,再创建文件夹
ex5:判断文件是否存在以及文件类型