標籤:java java7
Java的File類提供了訪問檔案的屬性,但File提供的功能有限。
Java7的NIO.2在java.nio.file.attribbute包下提供了大量的工具類,通過這些工具類,開發人員可以非常簡單地讀取,修改檔案屬性,這些工具類主要分為以下兩類。
XxxAttributeView:代表某種檔案屬性的視圖。
XxxAttributes:代表某種檔案屬性的集合,程式一般通過XxxAttributeView對象擷取XxxAttributes。
下面我只介紹兩種,其實還有很多。
BasicFileAttributeView:它可以擷取或修改檔案的基本屬性,包括檔案的最後修改時間,最後訪問時間,建立時間,大小,是否為目錄,是否為符號連結等。它的readAttribute()方法返回一個BasicFileAttributes對象,對檔案夾基本屬性的修改是通過BasicFileAtributes對象完成。
DosFileAttributeView:它主要用於擷取或修改檔案DOS相關屬性,比如檔案是否唯讀,是否隱藏,是否是系統檔案,是否是封存檔案等。它的readAttributes()方法返回一個DosFileAttributes對象對這些屬性的修改其實是由DosfileAttributes對象來完成。
- import java.nio.file.Files;
- import java.nio.file.Path;
- import java.nio.file.Paths;
- import java.nio.file.attribute.BasicFileAttributeView;
- import java.nio.file.attribute.BasicFileAttributes;
- import java.nio.file.attribute.DosFileAttributeView;
- import java.util.Date;
- public class Test {
- public static void main(String[] args) throws Exception
- {
- Path path=Paths.get("D:/address.txt");
- BasicFileAttributeView basicview=Files.getFileAttributeView(path, BasicFileAttributeView.class);
- BasicFileAttributes basicfile=basicview.readAttributes();
- System.out.println("建立時間"+new Date(basicfile.creationTime().toMillis()));
- System.out.println("檔案大小"+basicfile.size());
- DosFileAttributeView dosview=Files.getFileAttributeView(path, DosFileAttributeView.class);
- dosview.setHidden(true);
- dosview.setReadOnly(true);
- }
- }
著作權聲明:本文為博主http://www.zuiniusn.com 原創文章,未經博主允許不得轉載。
Java訪問檔案屬性