欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

深入了解Java I/O 之File类

程序员文章站 2022-03-10 07:59:00
目录file类创建file文件file文件基本操作file类java使用file类来表示计算机系统磁盘文件的对象类型。file类中提供了大量的方法,可以对文件进行增加、修改、删除、重命名等常规操作。f...

file类

java使用file类来表示计算机系统磁盘文件的对象类型。file类中提供了大量的方法,可以对文件进行增加、修改、删除、重命名等常规操作。file类的对象会村春文件自身的信息,例如文件在系统中的存储目录、文件大小、文件读写权限等。

创建file文件

file类中提供了以下几个构造方式来创建file对象。

file(string pathname)

file file=new file("d:/test/file01.txt");

file(string parent,string child)

file file1=new file("d:/","test/file01.txt");

file(file f,string child)

file(uri uri)

file文件基本操作

file类中提供了操作文件的方法,也可以直接对文件夹进行操作。文件的常见操作有:判断文件是否存在、创建和重命名文件、删除文件和获取文件基本信息。

package com.io.demo01;
import java.io.*;

/**
 * file类
 */
public class demo06 {
    public static void main(string[] args) {
        try {
            file file = new file("data01.json");
            system.out.println("创建文件data01.json");
            system.out.println("是否创建成功:"+file.createnewfile());
            system.out.println("文件是否为绝对路径:"+file.isabsolute());
            system.out.println("文件是否可读:"+file.canread());
            system.out.println("修改文件名称为:data02.json,是否成功:"+file.renameto(new file("data02.json")));
        } catch (exception e) {
            system.out.println("系统发生异常:"+e.getmessage());
        }
    }
}

运行结果:

深入了解Java I/O 之File类

file类也支持对文件夹的操作。对文件夹的操作一般有创建文件夹、删除文件夹、判断文件夹是否存在、获取文件夹信息等。

package com.io.demo01;
import java.io.file;

/**
 * 读取目录下的文件和目录
 */
public class demo07 {
    public static void main(string[] args) {
        string dirname="jjjjava";
        file file = new file("d:/"+dirname);
        if(file.isdirectory()){
            system.out.println("访问目录"+dirname);
            string[]s=file.list();
            for (int i = 0; i < s.length; i++) {
                file tempfile = new file("d:/" + dirname + "/" + s[i]);
                if(tempfile.isdirectory()){
                    system.out.println(s[i]+"是一个目录");
                }else{
                    system.out.println(s[i]+"是一个文件");
                }


            }
        }else{
            system.out.println(dirname+"不是一个目录");
        }
    }
}

在上面的示例中,在相对路径下创建了两个文件夹“/a”、“/b”以及一个文件“c.txt”。

运行结果为:

深入了解Java I/O 之File类

package com.io.demo01;
import java.io.file;

/**
 * file类删除操作
 * @author zpf
 */
public class demo08 {
    public static void main(string[] args) {
        file file = new file("java");
        system.out.println("创建文件夹java:"+file.mkdir());
        file =new file("java/dir");
        system.out.println("创建文件夹java/dir:"+file.mkdir());
        file floder = new file("java");
        deletefloder(floder);


    }
    public static void deletefloder(file floder){
        file[]files=floder.listfiles();
        if(files!=null){
            for (file f : files) {
                if (f.isdirectory()){
                    deletefloder(f);//递归调用
                }else{
                    system.out.println("删除文件"+f.getname()+"是否成功:"+f.delete());//删除文件
                }

            }
        }
        system.out.println("删除文件"+floder.getname()+"是否成功:"+floder.delete());//删除文件夹
    }
}

运行结果为:

深入了解Java I/O 之File类

总结

本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注的更多内容!

相关标签: Java File类I/O