Java I/O流可對檔案和目錄元資料進行操作,包括建立日期、修改日期和檔案大小等。操作元資料可透過Files類別或File類別進行,本文示範如何使用Files和File類別分別取得檔案的建立時間和尺寸,以及如何使用Files類別批次取得目前目錄中所有檔案的建立日期。
Java I/O流的元資料操作
#Java I/O流提供了對檔案和目錄元資料進行操作的能力。元資料資訊通常包括檔案或目錄的建立日期、修改日期、檔案大小等。
使用Files
類別操作元資料
#Java 7及更高版本提供了易用的Files
類,提供了豐富的API來操作檔案和目錄元資料。
import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.nio.file.attribute.BasicFileAttributes; public class FileMetadataExample { public static void main(String[] args) throws Exception { // 获取文件路径 Path filePath = Paths.get("test.txt"); // 获取文件基本属性 BasicFileAttributes attrs = Files.readAttributes(filePath, BasicFileAttributes.class); // 输出文件元数据 System.out.println("文件大小:" + attrs.size()); System.out.println("创建时间:" + attrs.creationTime()); System.out.println("修改时间:" + attrs.lastModifiedTime()); } }
使用File
類別操作元資料
#在Java中,File
類別也提供了對檔案元數據的訪問,但其API不如Files
類別豐富。
import java.io.File; public class FileMetadataExample { public static void main(String[] args) { // 获取文件 File file = new File("test.txt"); // 输出文件元数据 System.out.println("文件大小:" + file.length()); System.out.println("创建时间:" + file.lastModified()); } }
實戰案例
假設我們需要寫一個程式來取得目前目錄下所有檔案的建立日期。
import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.nio.file.attribute.BasicFileAttributes; public class FileListMetadataExample { public static void main(String[] args) throws Exception { // 获取当前目录 Path dirPath = Paths.get("."); // 遍历目录中的所有文件 Files.list(dirPath).forEach(path -> { // 获取文件基本属性 try { BasicFileAttributes attrs = Files.readAttributes(path, BasicFileAttributes.class); // 输出文件信息 System.out.println(path.getFileName() + ": " + attrs.creationTime()); } catch (Exception e) { // 忽略错误 } }); } }
以上是Java I/O流如何進行檔案元資料操作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!