1. 程式人生 > >Java中File常用的方法匯總

Java中File常用的方法匯總

目錄 指定位置 條件 exception 創建 public 操作文件 exist true

創建:
createNewFile()在指定位置創建一個空文件,成功就返回true,如果已存在就不創建,然後返回false。
mkdir() 在指定位置創建一個單級文件夾。
mkdirs() 在指定位置創建一個多級文件夾。
renameTo(File dest)如果目標文件與源文件是在同一個路徑下,那麽renameTo的作用是重命名, 如果目標文件與源文件不是在同一個路徑下,那麽renameTo的作用就是剪切,而且還不能操作文件夾。

刪除:
delete() 刪除文件或者一個空文件夾,不能刪除非空文件夾,馬上刪除文件,返回一個布爾值。
deleteOnExit()jvm退出時刪除文件或者文件夾,用於刪除臨時文件,無返回值。

判斷:
exists() 文件或文件夾是否存在。
isFile() 是否是一個文件,如果不存在,則始終為false。
isDirectory() 是否是一個目錄,如果不存在,則始終為false。
isHidden() 是否是一個隱藏的文件或是否是隱藏的目錄。
isAbsolute() 測試此抽象路徑名是否為絕對路徑名。
獲取:
getName() 獲取文件或文件夾的名稱,不包含上級路徑。
getAbsolutePath()獲取文件的絕對路徑,與文件是否存在沒關系
length() 獲取文件的大小(字節數),如果文件不存在則返回0L,如果是文件夾也返回0L。
getParent() 返回此抽象路徑名父目錄的路徑名字符串;如果此路徑名沒有指定父目錄,則返回null。
lastModified()獲取最後一次被修改的時間。

文件夾相關:
static File[] listRoots()列出所有的根目錄(Window中就是所有系統的盤符)
list() 返回目錄下的文件或者目錄名,包含隱藏文件。對於文件這樣操作會返回null。
listFiles() 返回目錄下的文件或者目錄對象(File類實例),包含隱藏文件。對於文件這樣操作會返回null。
list(FilenameFilter filter)返回指定當前目錄中符合過濾條件的子文件或子目錄。對於文件這樣操作會返回null。
listFiles(FilenameFilter filter)返回指定當前目錄中符合過濾條件的子文件或子目錄。對於文件這樣操作會返回null。

測試代碼:

package com.file;

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

/**
 * file相關的方法
 * 
 * @author coco_xu
 *
 */
public class FileMethodTest {

    public static void main(String[] args) throws IOException {

        File fileCreate = new File("D:\\coco_xu\\study\\files\\file.txt");
        // 創建單級文件夾
        System.out.println("單級文件夾創建:" + fileCreate.mkdir());
        // 創建多級文件夾
        System.out.println("多級文件夾創建:" + fileCreate.mkdirs());
//創建文件
        System.out.println("創建文件:" + fileCreate.createNewFile());
//文件重命名
        File toFile = new File("D:\\coco_xu\\study\\files\\toFile.txt");
        System.out.println("文件重命名:" + fileCreate.renameTo(toFile));

        // 刪除方法

        File file = new File("D:\\coco_xu\\study\\files\\toFile.tx");
        System.out.println("刪除文件:" + file.delete());
        file.deleteOnExit();

        // 判斷方法
        /*
         * File file = new File("F:\\a.txt");
         * System.out.println("文件或者文件夾存在嗎?"+file.exists());
         * System.out.println("是一個文件嗎?"+file.isFile());
         * System.out.println("是一個文件夾嗎?"+file.isDirectory());
         * System.out.println("是隱藏文件嗎?"+file.isHidden());
         * System.out.println("此路徑是絕對路徑名?"+file.isAbsolute());
         */

        // 獲取方法
        /*
         * File file = new File("f:\\a.txt");
         * System.out.println("文件或者文件夾得名稱是:"+file.getName());
         * System.out.println("絕對路徑是:"+file.getPath());
         * System.out.println("絕對路徑是:"+file.getAbsolutePath());
         * System.out.println("文件大小是(以字節為單位):"+file.length());
         * System.out.println("父路徑是"+file.getParent()); //使用日期類與日期格式化類進行獲取規定的時間 long
         * lastmodified= file.lastModified(); Date data = new Date(lastmodified);
         * SimpleDateFormat simpledataformat = new
         * SimpleDateFormat("YY年MM月DD日 HH:mm:ss");
         * System.out.println("最後一次修改的時間是:"+simpledataformat.format(data));
         */

        // 文件或者文件夾的方法
        /*
         * File[] file = File.listRoots(); System.out.println("所有的盤符是:"); for (File item
         * : file) { System.out.println("\t" + item); } File filename = new
         * File("D:\\coco_xu"); String[] name = filename.list();
         * System.out.println("指定文件夾下的文件或者文件夾有:"); for (String item : name) {
         * System.out.println("\t" + item); } File[] f = filename.listFiles();
         * System.out.println("獲得該路徑下的文件或文件夾是:"); for (File item : f) {
         * System.out.println("\t" + item.getName()); }
         */
    }

}

Java中File常用的方法匯總