java.io.File类:代表文件和目录。 在开发中,读取文件、生成文件、删除文件、修改文件的属性时经常会用到本类。
File类的常见构造方法
public File(String pathname)
以pathname为路径创建File对象,如果pathname是相对路径,则默认的当前路径在系统属性user.dir中存储
import java.io.File;public class TestFile1 {public static void main(String[] args) throws Exception {System.out.println(System.getProperty("user.dir"));File f = new File("a.txt"); //相对路径:默认放到user.dir目录下面f.createNewFile();//创建文件File f2 = new File("d:/b.txt");//绝对路径f2.createNewFile();}}
File类访问属性的方法列表
// 判断File是否存在public boolean exists();// 判断File是否是目录public boolean isDirectory();// 判断File是否是文件public boolean isFile();// 返回File最后修改时间public long lastModified();// 返回File大小public long length();// 返回文件名public String getName();// 返回文件的目录路径public String getPath();
File类创建文件或目录的方法列表
通过File对象创建空文件或目录(在该对象所指的文件或目录不存在的情况下)
// 创建新的FilecreateNewFile();// 删除File对应文件delete();// 创建一个目录;中间某个目录缺失,则创建失败mkdir();// 创建一个目录;中间某个目录缺失,则创建该缺失目录mkdirs();
// 使用mkdir创建目录import java.io.File;public class TestFile3 {public static void main(String[] args) throws Exception {File f = new File("d:/c.txt");f.createNewFile(); // 会在d盘下面生成c.txt文件f.delete(); // 将该文件或目录从硬盘上删除File f2 = new File("d:/电影/华语/大陆");boolean flag = f2.mkdir(); //目录结构中有一个不存在,则不会创建整个目录树System.out.println(flag);//创建失败}}// 使用mkdirs创建目录import java.io.File;public class TestFile4 {public static void main(String[] args) throws Exception {File f = new File("d:/c.txt");f.createNewFile(); // 会在d盘下面生成c.txt文件f.delete(); // 将该文件或目录从硬盘上删除File f2 = new File("d:/电影/华语/大陆");boolean flag = f2.mkdirs();//目录结构中有一个不存在也没关系;创建整个目录树System.out.println(flag);//创建成功}}
File类的综合应用
import java.io.File;import java.io.IOException;public class TestFile5 {public static void main(String[] args) {//指定一个文件File file = new File("d:/sxt/b.txt");//判断该文件是否存在boolean flag= file.exists();//如果存在就删除,如果不存在就创建if(flag){//删除boolean flagd = file.delete();if(flagd){System.out.println("删除成功");}else{System.out.println("删除失败");}}else{//创建boolean flagn = true;try {//如果目录不存在,先创建目录File dir = file.getParentFile();dir.mkdirs();//创建文件flagn = file.createNewFile();System.out.println("创建成功");} catch (IOException e) {System.out.println("创建失败");e.printStackTrace();}}//文件重命名(同学可以自己测试一下)//file.renameTo(new File("d:/readme.txt"));}}
