Java访问文件属性

Java访问文件属性

Java的File类提供了访问文件的属性,但File提供的功能有限。

Java7的NIO.2在java.nio.file.attribbute包下提供了大量的工具类,通过这些工具类,开发者可以非常简单地读取,修改文件属性,这些工具类主要分为以下两类。

XxxAttributeView:代表某种文件属性的视图。

XxxAttributes:代表某种文件属性的集合,程序一般通过XxxAttributeView对象获取XxxAttributes。

下面我只介绍两种,其实还有很多。

BasicFileAttributeView:它可以获取或修改文件的基本属性,包括文件的最后修改时间,最后访问时间,创建时间,大小,是否为目录,是否为符号链接等。它的readAttribute()方法返回一个BasicFileAttributes对象,对文件夹基本属性的修改是通过BasicFileAtributes对象完成。

DosFileAttributeView:它主要用于获取或修改文件DOS相关属性,比如文件是否只读,是否隐藏,是否是系统文件,是否是存档文件等。它的readAttributes()方法返回一个DosFileAttributes对象对这些属性的修改其实是由DosfileAttributes对象来完成。

[java]  view plain copy
  1. import java.nio.file.Files;  
  2. import java.nio.file.Path;  
  3. import java.nio.file.Paths;  
  4. import java.nio.file.attribute.BasicFileAttributeView;  
  5. import java.nio.file.attribute.BasicFileAttributes;  
  6. import java.nio.file.attribute.DosFileAttributeView;  
  7. import java.util.Date;  
  8. public class Test {  
  9.     public static void main(String[] args) throws Exception  
  10.     {  
  11.         Path path=Paths.get("D:/address.txt");  
  12.         BasicFileAttributeView basicview=Files.getFileAttributeView(path, BasicFileAttributeView.class);  
  13.         BasicFileAttributes basicfile=basicview.readAttributes();  
  14.         System.out.println("创建时间"+new Date(basicfile.creationTime().toMillis()));  
  15.         System.out.println("文件大小"+basicfile.size());  
  16.         DosFileAttributeView dosview=Files.getFileAttributeView(path, DosFileAttributeView.class);  
  17.         dosview.setHidden(true);  
  18.         dosview.setReadOnly(true);  
  19.         }  
  20. }  
    个人网站  www.software8.co  欢迎品尝

你可能感兴趣的:(Java访问文件属性)