JavaI/O:File类的常用方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaI/O:File类的常用方法相关的知识,希望对你有一定的参考价值。

File类是io包中唯一代表磁盘文件本身的对象。File类定义了一些与平台无关的方法来操作文件,可以通过调用File类中的方法,实现创建、删除、重命名文件等。File类的对象主要用来获取文件本身的一些信息,如文件所在目录、文件的长度、文件读写权限等。数据流可以将数据写入到文件中,而文件也是数据流最常用的数据媒体。

Java File类的功能非常强大,利用java基本上可以对文件进行所有操作。文本将对Java File 文件操作的类详细的分析,并将File类中的常用方法进行简单介绍。

使用createNewFile()创建文件

File file1 = new File("test1.txt");
        file1.createNewFile();

File类中的mkdir和mkdir的区别

mkdirs()可以建立多级文件夹,?mkdir()只会建立一级的文件夹


        File file2 = new File("D:\cmz\test2");
        file2.mkdir();
        File file3 = new File("D:\cmz\test2\test3.txt");
        file3.mkdirs();

File.separator方法

在Windows下的路径分隔符()和在Linux下的路径分隔符(/)是不一样的,当直接使用绝对路径时,跨平台会报No Such file or diretory异常。

File中还有几个与separator类似的静态常量,与系统有关,在编程中应尽量使用。

File test = new File("D:");
        String strFile = File.separator+"cmz"+test.separator+"test2"+test.separator+"test4.txt";
        File file4 = new File(test,strFile);
        file4.createNewFile();
        file4.delete();

File.deleteOnExit和File.createTempFile

File.createTempFile是在默认临时文件目录中创建一个空文件,使用给定前缀和后缀生成其名称

File.delete无需解释,为直接删除,deleteOnExit解释为:在虚拟机终止时,请求删除此抽象路径名表示的文件或目录

for(int i=0;i<5;i++)
        {
            File f=File.createTempFile("chengshit39",".tmp");

            f.deleteOnExit();
        }
        Thread.sleep(9000);

File.list 和File.lists:

list()方法 : 会返回一个字符数组,将制定路径下的文件或文件夹名字存储到String数组中。因为其返回的是一个String类型的数组,所以它也就只是一个名字而已(后面要讲到的listFiles()及其重载方法则不同,它们返回的是File类型的对象,所以具有其全部的属性和方法)。有以下两种重载方式:

1)、String[] ?list()

2)、String[] ?list(FilenameFilter filter)

而listFiles()方法返回的是一个File类的引用,它具有类的所有属性和方法,比如:String?getName()方法就能够返回该文件的String类型的文件名(名字而已)。

因此,遍历文件夹中所有文件,包括子文件夹中的文件时,必须用listFiles()方法


File file=new File("D:\cmz\test2");

        System.out.println("list()方法遍历的结果:");
        String[] strings=file.list();
        for (String string : strings) {
            System.out.println(string);
        }
        System.out.println();

        System.out.println("listFiles()方法遍历的结果:");
        File[] files=file.listFiles();
        for (File file2 : files) {
            System.out.println(file2);
        }

以上是关于JavaI/O:File类的常用方法的主要内容,如果未能解决你的问题,请参考以下文章

常用python日期日志获取内容循环的代码片段

C#常用代码片段备忘

IOS开发-OC学习-常用功能代码片段整理

如何将 View 类中的代码片段移动到 OnAppearing() 方法?

swift常用代码片段

# Java 常用代码片段