结论1:
File 类只能表示目录和文件的信息(名称、大小等),不能用来访问文件的内容。
结论2:
File 类的API操作
exists(),检查目录或者文件是不是存在,存在为true,不存在为false。
isDirectory(),检查当前对象是个目录还是文件,是目录为true,是文件或不存在为false。
isFile(),检查当前对象是个文件还是目录,是文件为true,是目录或不存在为false。
mkdir(),创建目录,目录名称是new File(String pathname)的pathname名称。
delete(),删除目录/文件,目录/文件是new File(String pathname)中,路径为pathname的目录/文件。
createNewFile(),创建文件,文件名是new File(String pathname)的pathname名称。
结论3:
new File("/Users/xxx/Documents/","io_file2/file1.txt"),创建File对象,将目录分为父目录和子目录。
new File("/Users/xxx/Documents/io_file2/file.txt"),创建File对象,目录为完整目录
结论4:
System.out.println(file3),直接打印File,打印结果是toString()内容"/Users/xxx/Documents/io_file2/file1.txt"
System.out.println(file3.getName()),获取文件名,比如file1.txt
System.out.println(file.getName()),获取目录名,比如io_file
System.out.println(file.getParent()),获取父目录名,比如/Users/xxx/Documents
System.out.println(file.getAbsolutePath()),获取绝对路径,比如/Users/xxx/Documents/io_file
package demo2file; import java.io.File; import java.io.IOException; public class Demo_2_File { public static void main(String args[]) throws IOException { //操作目录 File file = new File("/Users/xxx/Documents/io_file"); System.out.println(file.exists()); System.out.println(file.isDirectory()); System.out.println(file.isFile()); if(file.exists()){ file.delete(); }else{ file.mkdir(); } System.out.println(file.isDirectory()); //操作文件 File file2 = new File("/Users/xxx/Documents/io_file2/file.txt"); System.out.println(file.exists()); System.out.println(file.isFile()); System.out.println(file.isDirectory()); if(file2.exists()){ file2.delete(); }else{ file2.createNewFile(); } System.out.println(file.isFile()); System.out.println(file2); File file3 = new File("/Users/xxx/Documents/","io_file2/file1.txt"); file3.createNewFile(); System.out.println(file3); } }