标准文件类 File
知识点一:创建File对象,将将磁盘中的文件(或目录)转换成程序中的对象(注:磁盘中已有实际的文件)
File f1 = new File("d:\\F1");//1,绝对路径
File f2 = new File("test2.txt");//2,相对路径 默认放在了工作区间里了[D:\CodePractice\java\review\test2.txt]
File f3 = new File("d:\\F3\\test3");
知识点二:磁盘中没有文件或目录,创建文件或目录
方法1:createNewFile()法 [返回值为boolean型] (只能创建一个目录)
boolean bl1 =f1.createNewFile();
System.out.println(bl1);
创建成功:返回true 创建失败:返回false
图一:
图二:
方法2:mkdir()或mkdirs() [返回值为boolean型]
boolean bl3 = f3.mkdir() ;
System.out.println(bl3);
图三
boolean bl3 = f3.mkdits();
System.out.println(bl3);
图四
出现以上两种情况的原因:对比可以发现,mkdit()不能创建多级目录,mkdits()可以创建多级目录。
图五
本来创建txt格式的文件,结果出现了文件夹,这不是我们想要的,且慢慢往下看。。。。。。。
方法3:public File(File parent,String child) 或者 public File(String parent,String child) 必须是在已有父目录的情况下,才可以采用这种方法
File f3 = new File("d:\\F3","test3.txt");//d盘下必须有父目录F3,否则报错如图七
f3.createNewFile();
或者
File f3 = new File("d:\\F3");
File file = new File(f3,"test3.txt");//d盘下必须有父目录F3,否则报错如图七
f3.createNewFile();
图六
图七
小结:
1.createNewFile()创建的是文件 VS mkdir()或mkdirs() 创建的是文件夹
2.mkdir()一次只能创建一个单层文件夹 VS mkdirs() 可以同时创建多层文件夹(一般为了省事直接用mkdirs() )
3.public File(File parent,String child) 或者 public File(String parent,String child) ,必须是在已有父目录的情况下,才可以采用这种方法
4.程序中使用单个文件,前两种方法最简单;程序需要处理一个父目录下的若干子目录或者文件,第三种更合适。