JavaJava 杂谈程序员

Java学习之File文件

2019-04-26  本文已影响9人  戒律和尚

“谦虚其心,宏大其量 --摘自阳明先生语录”

前言
Java中File类是java.io包中唯一代表磁盘文件本身的对象,可以通过该类来操作系统上文件系统中的文件或目录。

可以获取如文件名、文件所在目录、文件的长度、文件读写权限等,但是不能通过File获取文件内容,
也就是说它只是抽象的代表了磁盘上的某个文件或目录,内部实际上是依赖一个平台无关的本地文件系统类,并且 File 无法对其所表示文件内容进行任何读写操作(那是流做的事情)。

File类的构造方法:
File(String pathname):根据路径名称构建File对象
File(String parent, String child):根据父路径和子路径构建File对象
File(File parent, String child):根据父路径File对象和子路径构建File对象
File(URI uri):通过将给定的 file: URI 转换为一个抽象路径名来创建一个新的 File 实例

public static void main(String[] args) {
        File file = new File("D:\\test.txt");
        File  file2  =  new File("D:\\test.txt","test2.txt");
        File  file3  =  new File(file,"test3.txt");
        try {
            File  file4  =  new File(new URI(""));
        } catch (URISyntaxException e) {
            e.printStackTrace();
        }
}

File类实现了Serializable, Comparable两大接口以便于其对象可序列化和比较,这上面的代码片段只是构建了File对象,我们可以通过其方法来操作文件。
创建文件:

public static void main(String[] args) {
    File file = new File("E:\\test.txt");
    try {
        file.createNewFile();
    } catch (IOException e) {
        e.printStackTrace();
    }
}

createNewFile方法将在在指定位置创建一个空文件,成功就返回true,如果已存在就不创建然后返回false,这里需要注意\斜杠问题,在Windows中分隔符为\,在Unix/Linux中分隔符为/,所以我们在构建File对象时应该使用File类中的常量separator,如:

public static void main(String[] args) {
    File file = new File("E:" + File.separator + "test.txt");
    try {
        file.createNewFile();
    } catch (IOException e) {
        e.printStackTrace();
    }
}

创建文件夹:

public static void main(String[] args) {
    File file = new File("E:" + File.separator + "hello");
    file.mkdir();
}

mkdir方法会在指定位置创建目录,返回boolean,创建成功返回true,不成功返回false,如果需要创建所有层级的目录那么需要调用mkdirs方法,如:

public static void main(String[] args) {
    File file = new File("E:" + File.separator + "hello" + File.separator + "world");
    file.mkdirs();
}

返回值和mkdir相同。

File类的其他常用方法:

1、renameTo(File dest):重命名文件或文件夹
2、delete() :删除文件或一个空文件夹
3、isDirectory():是否是目录
4、isFile():是否是文件
5、exists():判断文件或目录是否存在
6、getPath():获取相对路径
7、getName():获取名称
8、length():获取文件的大小
9、lastModified():获取文件最后修改时间
这里只列出一部分方法,更多的方法需要同学们去查看API,查看API也是一个非常好的习惯。

注意事项:
(1)Java程序的删除不走回收站。
(2)如果目录内还有内容就不能删除。

如果你觉得还不错请分享出去
你也可以关注公众号,新文章会第一时间发到公证号

1555737540494.jpg
上一篇下一篇

猜你喜欢

热点阅读