zoukankan      html  css  js  c++  java
  • AttributeView的用法

    这个类也是NIO提供的一个获取文件属性的一个类

    他有若干个属性视图,不同的视图可以获得或者设置不同类型的属性。还可以设置自定义属性

    一般都是通过

    Files.getFileAttributeView来获取不同的视图
    public static void main(String[] args) {
            Path path= Paths.get("IOStudy/src/StreamStudy/AttributeViewTest.java");
            FileOwnerAttributeView fileOwnerAttributeView=Files.getFileAttributeView(path,FileOwnerAttributeView.class);
            BasicFileAttributeView basicView= Files.getFileAttributeView(path,BasicFileAttributeView.class);
            try {
                BasicFileAttributes basicFileAttributes=basicView.readAttributes();
               var time= basicFileAttributes.lastModifiedTime();
                System.out.println(time);
                System.out.println("创建时间是:"+new Date(basicFileAttributes.creationTime().toMillis()));
                System.out.println("最后访问时间是:"+new Date(basicFileAttributes.lastAccessTime().toMillis()));
                System.out.println("文件大小时:"+basicFileAttributes.size());
                System.out.println(fileOwnerAttributeView.getOwner());
                System.out.println(fileOwnerAttributeView.name());
                UserDefinedFileAttributeView userView=Files.getFileAttributeView(path,UserDefinedFileAttributeView.class);
               List<String> list= userView.list();
               for(var li:list){
                   ByteBuffer buffer=ByteBuffer.allocate(userView.size(li));
                   userView.read(li,buffer);
                   buffer.flip();
                   String value= Charset.defaultCharset().decode(buffer).toString();
                   System.out.println(li+"--------->"+value);
               }
               userView.write("出版人",Charset.defaultCharset().encode("疯狂java讲义"));
               userView.write("编著者",Charset.defaultCharset().encode("吴慧韬"));
               DosFileAttributeView dosView=Files.getFileAttributeView(path,DosFileAttributeView.class);
               DosFileAttributes dosFileAttributes=dosView.readAttributes();
                System.out.println("文件是否隐藏:"+dosFileAttributes.isHidden());
                System.out.println("文件是否只读:"+dosFileAttributes.isReadOnly());
               dosView.setHidden(true);
               dosView.setReadOnly(true);
    
            } catch (IOException e) {
                e.printStackTrace();
            }
    
        }
    

     如上图所示

  • 相关阅读:
    能飞英语学习软件学习实践
    英语学习方式总结与实践
    Hello World
    centos 7.6中搭建samba共享服务
    PHP漏洞全解(一)PHP网站的安全性问题
    MySQL查询语句练习题
    在PHP中使用CURL实现GET和POST请求的方法
    js数组的操作大全
    php四种基础算法:冒泡,选择,插入和快速排序法
    Linux查看端口使用状态及启动
  • 原文地址:https://www.cnblogs.com/tomato190/p/12669477.html
Copyright © 2011-2022 走看看