1.File类是文件和路径名的抽象表述(目录即文件夹)
2.File类的构造方法
查看帮助文档可以知道File类的构造方法如下
File(File parent, String child) | 从父抽象路径名和子路径名字符串创建新的 |
---|---|
File(String pathname) | 通过将给定的路径名字符串转换为抽象路径名来创建新的 |
File(String parent, String child) | 从父路径名字符串和子路径名字符串创建新的 |
代码演示:
package Demo;
import java.io.File;
import java.io.IOException;
public class Jump{
public static void main(String[] args) throws IOException {
File f1=new File("D:\\java\\java.txt");
System.out.println(f1);
System.out.println("------------");
File f2 =new File("D:\\java", "java.txt");
System.out.println(f2);
System.out.println("------------");
File f3=new File("D:\\java");
File f4=new File(f3, "java.txt");
System.out.println(f4);
}
}
输出结果:D:\java\java.txt
------------
D:\java\java.txt
------------
D:\java\java.txt
3.File类中的创建功能
boolean | createNewFile() | 当且仅当具有此名称的文件尚不存在时,以原子方式创建由此抽象路径名命名的新空文件。 |
---|
boolean | mkdir() | 创建此抽象路径名指定的目录。 |
---|---|---|
boolean | mkdirs() | 创建此抽象路径名指定的目录,包括任何必需但不存在的父目录。 |
代码演示:
package Demo;
import java.io.File;
import java.io.IOException;
public class Jump{
public static void main(String[] args) throws IOException {
File f1=new File("D:\\java\\java.txt");
System.out.println(f1.createNewFile());
}
}
}
调用createNewFile()方法后,其会在D盘的java目录下创建一个名为java的txt文本,并返回true
如图所示
package Demo;
import java.io.File;
import java.io.IOException;
public class Jump{
public static void main(String[] args) throws IOException {
File f1=new File("D:\\java\\java.txt");
System.out.println(f1.createNewFile());
File f2=new File("D:\\java\\Java");
System.out.println(f2.mkdir());
}
}
调用mkdir()方法后,其会在D盘的java目录下创建一个名为Java的文件夹,并返回true
如图所示
package Demo;
import java.io.File;
import java.io.IOException;
public class Jump{
public static void main(String[] args) throws IOException {
File f1=new File("D:\\java\\java.txt");
System.out.println(f1.createNewFile());
File f2=new File("D:\\java\\Java");
System.out.println(f2.mkdir());
File f3=new File("D:\\java\\javademo\\javademo2");
System.out.println(f3.mkdirs());
}
}
调用mkdirs()方法后,其其会在D盘的java目录下创建一个名为javademo的文件夹,并在javademo目录内创建一个名为javademo2的文件夹,并返回true
需注意的是,如果该文件或目录已存在,会返回false
4File类中的删除功能
boolean | delete() | 删除此抽象路径名表示的文件或目录。 |
---|
代码演示如下:
package Demo;
import java.io.File;
import java.io.IOException;
public class Jump{
public static void main(String[] args) throws IOException {
File f1=new File("D:\\java\\java.txt");
System.out.println(f1.createNewFile());
File f2=new File("D:\\java\\Java");
System.out.println(f2.mkdir());
File f3=new File("D:\\java\\javademo\\javademo2");
System.out.println(f3.mkdirs());
System.out.println(f1.delete());//删除java目录下的java.txt文本
}
}
调用delete()方法后,其会把D盘目录下java目录中的java.txt删除,并返回true
5.绝对路径 和 相对路径
绝对路径:完整的路径名,不需要任何其他信息就可以定位它所表示的文件,例:D:\\java\\java.txt
相对路径:必须使用取自其他路径名的信息进行解释,例:myfile\\java.txt
6.File类中的其他方法
String | getAbsolutePath() | 返回此抽象路径名的绝对路径名字符串 |
---|
String | getPath() | 将此抽象路径名转换为路径名字符串。 |
---|
String | getName() | 返回此抽象路径名表示的文件或目录的名称。 |
---|
long | length() | 返回此抽象路径名表示的文件的长度。 |
---|
package Demo;
import java.io.File;
import java.io.IOException;
public class Jump{
public static void main(String[] args) throws IOException {
File f1=new File("D:\\java\\java.txt");
System.out.println(f1.getAbsolutePath());
System.out.println(f1.getPath());
System.out.println(f1.getName());
System.out.println(f1.length());
}
}
输出结果:D:\java\java.txt
D:\java\java.txt
java.txt
0