`
cucaracha
  • 浏览: 141791 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
博客专栏
A8f3fa2f-18ce-3862-897a-5d2209197c90
Java NIO.2
浏览量:88116
7a076ba7-8ec8-3241-aa3c-67bb2f7856a2
Java EE 7 简明教...
浏览量:36817
社区版块
存档分类
最新评论

[NIO.2] 第十三篇 属性视图之 DOS View

阅读更多
为了支持 DOS(或 Samba) 文件系统,DosFileAttributeView 属性视图扩展了 Basic 属性视图(意味着 DOS 属性视图是 Basic 属性视图的子类,可以直接访问父类的属性)。DOS 属性视图提供了四个属性,对应下面的四个方法:
isReadOnly(): 返回只读属性值(true 表示文件不能被删除或修改)
isHidden(): 返回文件是否隐藏的属性(true 表示文件是隐藏文件)
isArchive(): 返回文件是否为存档文件的属性(用于备份程序)
isSystem(): 返回文件的系统属性(true 表示文件是系统文件)

下面的例子通过演示了如何获取这四个属性值:

import java.io.IOException; 
import java.nio.file.Files; 
import java.nio.file.Path; 
import java.nio.file.Paths; 
import java.nio.file.attribute.DosFileAttributes; 
... 
DosFileAttributes attr = null; 
Path path = Paths.get("C:/rafaelnadal/tournaments/2009", "BNP.txt"); 

try { 
    attr = Files.readAttributes(path, DosFileAttributes.class); 
} catch (IOException e) { 
    System.err.println(e); 
} 

System.out.println("Is read only ? " + attr.isReadOnly()); 
System.out.println("Is Hidden ? " + attr.isHidden()); 
System.out.println("Is archive ? " + attr.isArchive()); 
System.out.println("Is system ? " + attr.isSystem());


设置和获取单个属性可以使用 setAttribute() 和 getAttribute() 方法,看看下面的例子:

import static java.nio.file.LinkOption.NOFOLLOW_LINKS; 
… 
//setting the hidden attribute to true 
try { 
    Files.setAttribute(path, "dos:hidden", true, NOFOLLOW_LINKS); 
} catch (IOException e) { 
    System.err.println(e); 
} 

//getting the hidden attribute  
try { 
    boolean hidden = (Boolean) Files.getAttribute(path, "dos:hidden", NOFOLLOW_LINKS); 
    System.out.println("Is hidden ? " + hidden); 
} catch (IOException e) { 
     System.err.println(e); 
}


DOS 属性视图支持以下属性名称:

  • hidden
  • readonly
  • system
  • archive


访问属性的通用结构是 [view-name:]attribute-name,在这个例子中 view-name 是 dos,attribute-name 是 hidden。

文章来源:http://www.aptusource.org/2014/03/nio-2-dos-view/
分享到:
评论

相关推荐

    Java IO, NIO and NIO.2(Apress,2015)

    Java I/O, NIO, and NIO.2 is a power-packed book that accelerates your mastery of Java's various I/O APIs. In this book, you'll learn about classic I/O APIs (File, RandomAccessFile, the stream classes ...

    java NIO.zip

    通道是NIO中的核心概念之一,它提供了从一个数据源(如文件、套接字)到另一个数据源的数据传输路径。Java NIO支持多种类型的通道,包括文件通道(FileChannel)、套接字通道(SocketChannel)和服务器套接字通道...

    Java IO, NIO and NIO.2 原版pdf by Friesen

    New I/O (NIO), and NIO.2 categories. You learn what each category offers in terms of its capabilities, and you also learn about concepts such as paths and Direct Memory Access. Chapters 2 through 5 ...

    Java IO, NIO and NIO.2

    Java IO、NIO以及NIO.2是Java中用于处理输入/输出操作的三种主要机制。本书《Java IO, NIO and NIO.2》旨在深入浅出地介绍这些机制,同时书中内容均为英文。接下来将详细介绍这些知识点。 **Java IO** Java IO是...

    Pro Java 7 NIO.2.pdf

    此外,NIO.2还增强了对符号链接和硬链接的支持,这在第三章中有所讨论。用户可以创建、读取和删除这些链接。 ### 6. 文件和目录操作 第四章则详细介绍了文件和目录的各种操作,包括创建、删除、移动等。 ### 7. ...

    NIO.2 入门,第 2 部分: 文件系统 API

    本篇我们将深入探讨NIO.2中的几个关键概念和类,包括`Files`, `Path`, `FileAttributes`, `DirectoryWatcher`以及`FileVisitor`。这些组件极大地增强了Java对操作系统文件系统的访问能力。 首先,`Path`接口是NIO.2...

    java nio.pdf

    java nio.pdfjava nio.pdfjava nio.pdfjava nio.pdfjava nio.pdfjava nio.pdfjava nio.pdfjava nio.pdfjava nio.pdfjava nio.pdfjava nio.pdfjava nio.pdfjava nio.pdfjava nio.pdfjava nio.pdfjava nio.pdfjava ...

    Java I/O, NIO and NIO.2

    总的来说,Java I/O、NIO和NIO.2是Java平台中处理输入输出的三个重要阶段,它们各自有其特点和适用范围。学习和运用这些技术,能够帮助开发者更好地处理数据交互,提高程序的性能和可扩展性。通过阅读《Java I:O, ...

    Java NIO 中英文版 + Pro Java 7 NIO.2

    `Pro Java 7 NIO.2`这本书由Anghel Leonard著,深入探讨了Java NIO.2 API,这是Java 7引入的进一步扩展,包括: 1. **文件系统API增强**:新增了AsynchronousFileChannel,支持异步文件操作,可以在后台线程中执行...

    Java NIO.pdf

    Java NIO.pdf nio教程 Java NIO.pdf nio教程 java nio

    Pro Java 7 NIO.2

    This book covers all the important aspects involved in developing NIO.2-based applications. It provides clear instructions for getting the most out of NIO.2 and offers many exercises and case studies ...

    nio.zip_NIO_NewIO_NIO.c_java NIO chm_java nio

    缓冲区则用于存储和传输数据,它是NIO的关键组件,具有容量、位置、限制等属性,并支持多种操作,如读写、反转、清除等。选择器允许单个线程同时监控多个通道,当某个通道准备进行读写操作时,选择器会通知我们,...

    nio.rar_FastCopyFile.java_NIO_UseFloatBuffer.java_java nio_文件锁

    Java NIO(New Input/Output)是Java标准库中提供的一种I/O模型,与传统的BIO( Blocking I/O)相比,NIO具有更好的性能和更高的灵活性。NIO的核心组件包括通道(Channel)、缓冲区(Buffer)和选择器(Selector)。...

    ProJava7NIO.2PDFBooks.pdf 英文原版

    Pro Java 7 NIO.2 – PDF Books

    优雅的操作文件:java.nio.file 库介绍.pdf

    【java.nio.file库详解】 Java 早期版本的文件I/O操作功能相对有限,存在几个显著问题:不支持现代文件系统特性、API设计复杂且冗长、处理大文件和并发性能不足。为了解决这些问题,Java引入了`java.nio.file`库,...

    蔚来-NIO.US-新车上市,蔚来可期.pdf

    蔚来(NIO.US)新车上市,蔚来可期 蔚来(NIO.US)是一家中国的新能源汽车制造商,专注于生产高性能的电动汽车。 公司的目标是成为中国最大的新能源汽车品牌,并且跻身全球汽车行业的前列。 蔚来2025年目标价45.5...

Global site tag (gtag.js) - Google Analytics