File類的概述:
文件和目錄路徑名的抽象表示形式。
以上爲file類的概念,有了概念當然是不夠的我們就從file的構造方法開始。
構造方法:
public File(String pathname)
根據一個路徑得到File對象
public File(String parent,String child)
根據一個目錄和子文件夾/目錄得到File對象
public File(File parent,String child)
根據一個父File對象和一個文件/目錄得到File對象
我們可以看到file類常用構造方法一共有三個,下面我們從最基本的方法開始來對File類進行一個初步認識
package com.file.test;
import java.io.File;
import java.io.IOException;
public class FileDemo {
public static void main(String[] args) {
File file = new File("E:\\filetest\\demo\\aaa");
System.out.println("mkdirs: " + file.mkdirs());
/*
* 當使用file進行文件創建時我們需要經過兩部:
* 1、首先可以通過代碼看見我們第一步先實例一個file對象,並且制定file建立文件夾的路徑。
* 2、然後我們再使用file的方法mkdirs()進行去多級文件夾的創建。
*/
File file2 = new File("E:\\filetest\\demo\\aaa\\a.txt");
// File file2 = new File("a.txt");
// 提示若沒有寫明路徑默在項目路徑下
try {
System.out.println("createNewFile:" + file2.createNewFile());
} catch (IOException e) {
e.printStackTrace();
}
/*
* 這裏同樣我們通過兩部創建文件: 1、首先實例化對象並且制定文件創立的路徑
* 2、使用createNewFile()方法創建文件(注意:這裏ecplise提示我們需要處理異常,
* 由於在main方法中所以我們使用try...catch來處理這個異常)
*/
}
}
通過以上語法我們就能知道最簡單的File創建文件夾(通過mkdirs()方法)和文件(通過createNewFile()方法)的語法。
下面我們接着來看File類對文件增刪相關方法代碼如下:
package com.file.test;
import java.io.File;
import java.io.IOException;
public class FIleDemo2 {
public static void main(String[] args) {
File file1 = new File("E:\\測試刪除");
System.out.println("mkdirs:" + file1.mkdirs());
File file2 = new File("E:\\測試刪除\\這是一個驗證刪除的文件.txt");
try {
System.out.println("createNewFile:" + file2.createNewFile());
} catch (IOException e) {
e.printStackTrace();
}
/*
* 爲了驗證刪除功能我們就是用才學會的創建功能先創建一個文件夾並在這個文件夾當中在創建一個txt文件
*/
System.out.println("filedelete:" + file2.delete());
// 通過上面一條語句我們就可以把剛剛創建的文件進行刪除了
System.out.println("filedelete:" + file1.delete());
// 通過上面語句我們可以將file1進行刪除
// 由此可知delete()不僅可以刪除文件同樣也可以刪除文件夾特別提示!!!java刪除是不會通過回收站!!!
// 要刪除一個文件夾該文件內不能包含文件或者文件夾
}
}
同樣使用delete()方法即可。需要注意的是通過該方法刪除文件時,java回直接從硬盤中刪掉文件,簡單粗暴。
到目前爲止我們知道文件、文件夾的創建以及刪除,接下來我們繼續來看java對File的其他方法。
package com.lj.file;
import java.io.File;
import java.text.SimpleDateFormat;
import java.util.Date;
public class FileDemo3 {
public static void main(String[] args) {
File file = new File("/Users/liujing/Desktop/E1340CD8C40CECDFB6148415CEBFD873.jpg");
File file2 = new File("/Users/liujing/Desktop/非洲劉德華");
System.out.println("File: " + file.renameTo(file2));
// 改名的時,如上面代碼所示我們只需要使用rename()方法即可
System.out.println("file2: " + file2.isDirectory());
// 判斷是否是目錄
System.out.println("file2: " + file2.isFile());
// 判斷是否是文件
System.out.println("file2:" + file2.exists());
// 判斷是否存在
System.out.println("file2:" + file2.canRead());
// 判斷是否可讀
System.out.println("file2:" + file2.canRead());
// 判斷是否可寫
System.out.println("file2:" + file2.isHidden());
// 判斷是否隱藏
// public String getAbsolutePath():獲取絕對路徑
System.out.println("file2:" + file2.getAbsolutePath());
// public String getPath():獲取相對路徑
System.out.println("file2:" + file2.getPath());
// public String getName():獲取名稱
System.out.println("file2: " + file2.getName());
// public long length():獲取長度。字節數
System.out.println("file2: " + file2.length());
// public long lastModified():獲取最後一次的修改時間,毫秒值
Date d = new Date(file2.lastModified());
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH-mm-ss");
String s = sdf.format(d);
System.out.println(s);
}
}
以上方法使我們可以對文件進行更多的操作,這裏我們用了一張魔獸的圖片來做演示執行程序結果如下:
並且圖片文件也已經改名成功
以上就是對File類進行的最基本的操作的幾個方法。難度不大,需要用到時可以查詢API即可。