Java文件类File详解

java.io.File类

  • 凡是与输入、输出相关的类、接口等都定义在java.io包下
  • File是一个类,可以有构造器创建其对象。此对象对应着一个文件(.txt .avi .doc .ppt .mp3 .jpg)或文件目录
  • File类对象是与平台无关的
  • File中的方法,仅涉及到如何创建、删除、重命名等等。只要涉及文件内容的,File是无能为力的,必须由io流来完成
  • File类的对象常作为io流的具体类的构造器的形参

一、createNewFile()  delete()  lastModified()   exists()  

package com.yyx.pratice;

import java.io.File;
import java.io.IOException;
import java.util.Date;

public class JavaPratice {
    public static void main(String[] args) {
        String filePath = "D:" + File.separator + "testfile.txt";
        System.out.println(filePath);
        File file = new File(filePath);
        // 判断文件是否存在且是不是文件
        if (file.isFile() && file.exists()) {
            // 删除文件
            file.delete();
        } else {
            try {
                // 创建文件
                file.createNewFile();
                //打印文件最后编辑时间
                System.out.println(new Date(file.lastModified()));
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}

二、mkDir()  mkDirs()  list()  listFiles()

package com.yyx.pratice;

import java.io.File;
import java.io.IOException;

public class JavaPratice {
    public static void main(String[] args) {
        /*
         * mkDir():创建一个文件目录。只有在上层文件目录存在的情况下,才能返回true 
mkDirs():创建一个文件目录。若上层文件目录不存在,一并创建
*/ String mkdirPath = "D:" + File.separator + "testfile"; File mkdirFile = new File(mkdirPath); if (!mkdirFile.exists()) { mkdirFile.mkdir(); } String mkdirsPath1 = "D:" + File.separator + "testfile" + File.separator + "file1"; File mkdirsFile1 = new File(mkdirsPath1); if (!mkdirsFile1.exists()) { mkdirsFile1.mkdir(); } String mkdirsPath2 = "D:" + File.separator + "testfile" + File.separator + "file2" + File.separator + "file3"; File mkdirsFile2 = new File(mkdirsPath2); if (!mkdirsFile2.exists()) { mkdirsFile2.mkdirs(); } /* * 只有上级目录存在,才能在该目录下创建文件 */ String filePath1 = "D:" + File.separator + "testfile" + File.separator + "filepath.txt"; File file1 = new File(filePath1); if (!file1.exists()) { try { file1.createNewFile(); } catch (IOException e) { e.printStackTrace(); } } String filePath2 = "D:" + File.separator + "testfile" + File.separator + "file1" + File.separator + "filepath1.txt"; File file2 = new File(filePath2); if (!file2.exists()) { try { file2.createNewFile(); } catch (IOException e) { e.printStackTrace(); } } /* * list()返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录 * listFiles()返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件 * 可以使用递归循环取出目录下的文件和目录 */ File file3 = new File(mkdirPath); String[] strs = file3.list(); for (int i = 0; i < strs.length; i++) { System.out.println(strs[i]); } System.out.println("*******************"); File[] files = file3.listFiles(); for (int i = 0; i < files.length; i++) { System.out.println(files[i].getName()); } } }

猜你喜欢

转载自www.cnblogs.com/xianya/p/9185590.html