标签:
Java的File
目录:
1.创建File的文件或者目录的方法....
2.创建File对象的构造器的三种形式...
3.关于分割符的相关知识......................
4.file简单Api介绍...................................
1.再说File的时候就不得不先说一下创建文件和目录的三个方法。
<1>createNewFile()必须有已经创建好的路径,才能创建一个文件。返回值:如果指定的文件不存在并成功地创建,则返回 true;如果指定的文件已经存在,则返回 false
<2>mkdir() 只能在已经存在的目录中创建创建文件夹。
<3>mkdirs() 可以在不存在的目录中创建文件夹。诸如:a\\b,既可以创建多级目录。
2.创建File对象的构造器有三种形式
A.File(String directoryPath)
B.File(String directoryPath, String filename)
C.File(File dirObj, String filename)
在A中的构造函数没什么可说的就是一个路径,(1)如果File的对象调用createNewFile()则会再以最后一个文件名创建一个文件;(2)如果调用mkdir()或者mkdirs()则创建一个目录。
在B中的构造器第一个参数,和第一个的效果一样,但是最后一个参数,(1)当用file对象调用createNewFile()的时候,第二个参数代表的是文件的名字。(2)如果写入第二个参数”javaio\\kc”的形式的话调用调用mkdir()或者mkdirs()就会在上一级目录下创建两个子文件夹,javaio文件夹和kc文件夹,他们在同一个集上。
3.关于分隔符的相关知识
路径分隔符:Windows下是“\” unix|linux下是“/”
考虑到程序的可移植性,创建文件时建议大家选用"/",因为经过测试用java创建文件时在windows平台下用“/”也是可以的,java貌似在后台作过处理了。
还有一种用法:
用File.separator代替它们,这个永远不会出现可移植性问题。
下面举一些例子,加深理解:
File f = new File("d://book//1"); √
File f = new File("d:/book/1");√
File f = new File("d:\\book\\1");√
File f = new File("d:\book\1"); Χ
注意: \是转义字符,所以\\才相当于\.
总结:推荐大家用"/"或"File.separator"。
4.file简单Api的介绍
这里写两段代码:
1 //创建一个目录的File对象 2 3 File file1=new File("E:/javatest/java"); 4 5 if(!file1.exists()) { 6 7 file1.mkdirs();//创建目录 8 9 }else { 10 11 System.out.println("创建的目录已经存在"); 12 13 } 14 15 16 17 18 19 //创建一个文件 20 21 File file2=new File("E:/javatest/java","java.txt"); 22 23 if(!file2.exists()) { 24 25 try { 26 27 file2.createNewFile(); 28 29 } catch (IOException e) { 30 31 // TODO Auto-generated catch block 32 33 e.printStackTrace(); 34 35 } 36 37 }else { 38 39 System.out.println("创建的文件已经存在"); 40 41 } 42 43 //是否为路径true,,是否为文件false 44 45 System.out.println("是否为路径"+file1.isDirectory()); 46 47 System.out.println("是否为文件"+file1.isFile()); 48 49 //是否为路径false,,是否为文件true 50 51 System.out.println("是否为路径"+file2.isDirectory()); 52 53 System.out.println("是否为文件"+file2.isFile()); 54 55 //常用的Api 56 57 //A.直接输出对象 58 59 System.out.println(file1);//输出的结果为E:\javatest\java,,相当于file1.toString()方法 60 61 System.out.println(file2);//输出的结果为E:\javatest\java\java.txt 62 63 //B.输出绝对路径 64 65 System.out.println(file1.getAbsolutePath());//E:\javatest\java 66 67 System.out.println(file2.getAbsolutePath());//E:\javatest\java\java.txt 68 69 //C.获取文件的名称 70 71 System.out.println(file1.getName());//输出结果为最后一级的目录Java 72 73 System.out.println(file2.getName());//输出的结果为文件的名称Java.txt 74 75 //D.获取父目录 76 77 System.out.println(file1.getParent());//E:\javatest 78 79 System.out.println(file2.getParent());//E:\javatest\java 80 81 //效果和获取父目录一样的效果 82 83 System.out.println(file1.getParentFile().getAbsolutePath());
标签:
原文地址:http://www.cnblogs.com/dukc/p/4768017.html