【Java】File類
一、概述
* File更應該叫做一個路徑, 檔案路徑或者資料夾路徑
* 路徑分為絕對路徑和相對路徑
* 絕對路徑是一個固定的路徑,從碟符開始
* 相對路徑相對於某個位置,在eclipse下是指當前專案下,在dos下
* 檢視API指的是當前路徑
* 檔案和目錄路徑名的抽象表示形式
* 字串中的需要//來表示分隔符,因為一個/為轉義符
二、構造方法
1、File(Stringpathname):根據一個路徑建立得到File物件,絕對/相對路徑
2、File(Stringparent, String child):根據一個目錄(資料夾)和一個子檔案/目錄得到File物件,父級路徑+子級路徑
3、File(Fileparent, String child):根據一個父File物件和一個子檔案/目錄得到File物件,將父級路徑封裝成一個File物件
三、File類的建立功能
* public boolean createNewFile():檔案如果不存在,則建立並返回true,如果存在這樣的檔案,就不建立了返回 false
* public boolean mkdir():建立單個資料夾返回true,如果存在這樣的資料夾,就不建立了返回false
* public boolean mkdirs():建立多級資料夾,如果父資料夾不存在,會幫你建立出來
* 注意事項:
如果你建立檔案或者資料夾忘了寫碟符路徑,那麼,預設在專案路徑下。
四、File類的重新命名和刪除功能
1、public boolean renameTo(File dest):把檔案重新命名為指定的檔案路徑,
File dest為目標檔案路徑(名字)
* 如果路徑名相同,就是改名。
* 如果路徑名不同,就是改名並剪下。
2、public boolean delete():刪除檔案或者資料夾
* Java中的刪除不走回收站。不可撤回。要小心。
* 要刪除一個資料夾,請注意該資料夾內不能包含檔案或者資料夾,必須是空的
五、File類的判斷功能
* public boolean isDirectory():判斷是否是目錄(資料夾)
* public boolean isFile():判斷是否是檔案
* public boolean exists():判斷是否存在
* public booleancanRead():判斷是否可讀
設定是否可讀:setReadable(boolean);
注意:windows系統認為所有的檔案都是可讀的,設定不起作用。在LINUX下,如果設為不可讀則為不可讀
* public boolean canWrite():判斷是否可寫
設定是都可寫:setWriteable(boolean);
注意:windows系統可以設定為不可寫
* publicboolean isHidden():判斷是否隱藏
六、File類的獲取功能
* public String getAbsolutePath():獲取絕對路徑
* public String getPath():獲取路徑,獲取構造方法裡的路徑,跟建立時傳入的路徑有關
* public String getName():獲取檔案或者資料夾的名稱
* public long length():獲取檔案的長度。位元組數
* public long lastModified():獲取最後一次的修改時間,毫秒值。
注意:可以使用毫秒值建立Date物件,使用SimpleDateFormat日期進行格式化。
Date d = new Date(file1.lastModified()); //檔案的最後修改時間
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
System.out.println(sdf.format(d));
* public String[] list():獲取指定目錄下的所有檔案或者資料夾的名稱陣列,僅為了獲取檔名
* public File[] listFiles():獲取指定目錄下的所有檔案或者資料夾的File陣列,獲取檔案物件,File類重寫了toString()方法。
七、練習
判斷E盤目錄下是否有字尾名為.jpg的檔案,如果有,就輸出該檔名稱
import java.io.FilenameFilter;
public class Test3 {
/**
* @param args
* * A:案例演示
* 需求:判斷E盤目錄下是否有字尾名為.jpg的檔案,如果有,就輸出該檔名稱
*/
public static void main(String[] args) {
File dir = new File("E:\\");
// String[] arr = dir.list(); //獲取e盤下所有的檔案或資料夾
// for (String string : arr) {
// if(string.endsWith(".jpg")) {
// System.out.println(string);
// }
// }
/*File[] subFiles = dir.listFiles(); //獲取e盤下所有的檔案或資料夾物件
for (File subFile : subFiles) {
if(subFile.isFile() && subFile.getName().endsWith(".jpg")) {
System.out.println(subFile);
}
}*/
}
}
注意:如果想判斷E盤下資料夾中jpg檔案,需要用到遞迴思想 ,後期學習。相關文章
- Java —— 檔案類(File 類)Java
- java筆記-file類Java筆記
- [Java]File類詳解Java
- Java : File 檔案類操作Java
- 【JAVA :File類的用法(一)】File類的構造方法-File類建立檔案與資料夾Java構造方法
- Java File類的簡單使用Java
- Java 的異常以及File類Java
- Java學習之File類理解Java
- Java File 類的使用方法詳解Java
- java進階(34)--File類、目錄複製Java
- File類的使用
- Java程式設計基礎20——異常&IO(File類)Java程式設計
- File類的基本操作
- JAVA程式設計學習記錄(File類檔案操作)Java程式設計
- java技術培訓之File類中常用的構造方法Java構造方法
- 【JAVA】Java中 File f=new File(String parent ,String child)Java
- How to Convert Class File to Java File Online?Java
- Java基礎·【File使用】Java
- 18. Java IO: FileJava
- Java - 異常與FileJava
- PHP 自定義session儲存 FILE 方式類PHPSession
- C#中File 類的用法 轉載C#
- db file scattered read與事件db file sequential read相類似(轉)事件
- 關於Java的File.separatorJava
- Java讀取File的問題Java
- How to dynamically evaluate a tag within a java fileJava
- Java IO1:IO和FileJava
- 整合 Python標準庫之 Path/File 類Python
- File Dumps(ORACLE各類檔案轉儲)Oracle
- Java常用類-Object類JavaObject
- JAVA常用類--Cleaner類Java
- Java —— 列舉類(enum 類)Java
- Java —— 集合工具類(Collections 類)Java
- JAVA常用類--Runtime類Java
- 怎麼實現File類的相關操作啊?
- Java7 新特性 —— java.nio.file 檔案操作Java
- Java 抽象類Java抽象
- java 容器類Java