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

[NIO.2] 第十篇 NIO.2 中的文件属性

阅读更多
如果对于文件或目录还有疑问,例如文件是否隐藏、当前对象是文件还是目录、文件占用多少磁盘空间、文件拥有者是谁、等等。这一切问题都可以从文件元数据中得到。

NIO.2 中的元数据就是文件属性,并且提供了 java.nio.file.attribute 包来访问元数据。因为不同的文件系统有不同的文件属性,NIO.2 将这些属性通过视图(view)进行分组,每个视图都对应特定的文件系统。一般来说,视图的属性可以通过 java.nio.file.Files 类的 readAttributes() 来批量获取,也可以通过 getAttribute() 和 setAttribute() 方法来操作单个属性。

通过学习 NIO.2 提供的视图,可以获取关于文件的属性信息。

针对不同的文件系统和功能,NIO.2 提供以下 6 个属性视图:

  • BasicFileAttributeView:这是基本属性视图,需要支持所有的文件系统实现。这个属性视图名为 basic。
  • DosFileAttributeView:这个视图提供了 4 个标准属性,用于 DOS 的文件系统实现。这个属性视图名为 dos。
  • PosixFileAttributeView:这个视图扩展了标准视图,用于 POSIX(Portable Operating System Interface for Unix)标准的文件系统实现,例如 UNIX。这个属性视图名为 posix。
  • FileOwnerAttributeView:这个视图可用于任意文件系统实现,只要此文件系统支持文件所有者。这个属性视图名为 owner。
  • AclFileAttributeView:这个视图用于读取和更新文件的 ACL(访问控制列表)。并且支持 NFSv4 ACL 模式。这个属性视图名为 acl。
  • UserDefinedFileAttributeView:这个视图支持用户自定义的元数据。


文章来源:http://www.aptusource.org/2014/03/nio-2-supported-views/
0
2
分享到:
评论
7 楼 freesea 2016-02-28  
不错,还没注意java 7已经增加了这么多类了
6 楼 cucaracha 2014-03-27  
jahu 写道
cucaracha 写道
jahu 写道
cucaracha 写道
jahu 写道
不知所然,

NIO.2 系列请参考前后博文。

看完了,,还没看明白你这章说的什么。

NIO.2 一共支持 6 种类型的 AttributeView,这篇文章算是一个开头总览,介绍一下有哪 6 种,后续博文会每一个都介绍到。
在 NIO.2 中,文件属性分组放在了这 6 个 AttributeView 中,例如要获取文件大小、访问时间就要到 BasicFileAttributeView 中去取值。你可参看我新发的一篇博文,介绍了 BasicFileAttributeView 这个属性视图的用法。

至少要告诉大家, 怎么使用的吧,没头,没尾的

嗯,好吧,这一篇我再改改。
5 楼 jahu 2014-03-27  
cucaracha 写道
jahu 写道
cucaracha 写道
jahu 写道
不知所然,

NIO.2 系列请参考前后博文。

看完了,,还没看明白你这章说的什么。

NIO.2 一共支持 6 种类型的 AttributeView,这篇文章算是一个开头总览,介绍一下有哪 6 种,后续博文会每一个都介绍到。
在 NIO.2 中,文件属性分组放在了这 6 个 AttributeView 中,例如要获取文件大小、访问时间就要到 BasicFileAttributeView 中去取值。你可参看我新发的一篇博文,介绍了 BasicFileAttributeView 这个属性视图的用法。

至少要告诉大家, 怎么使用的吧,没头,没尾的
4 楼 cucaracha 2014-03-27  
jahu 写道
cucaracha 写道
jahu 写道
不知所然,

NIO.2 系列请参考前后博文。

看完了,,还没看明白你这章说的什么。

NIO.2 一共支持 6 种类型的 AttributeView,这篇文章算是一个开头总览,介绍一下有哪 6 种,后续博文会每一个都介绍到。
在 NIO.2 中,文件属性分组放在了这 6 个 AttributeView 中,例如要获取文件大小、访问时间就要到 BasicFileAttributeView 中去取值。你可参看我新发的一篇博文,介绍了 BasicFileAttributeView 这个属性视图的用法。
3 楼 jahu 2014-03-27  
cucaracha 写道
jahu 写道
不知所然,

NIO.2 系列请参考前后博文。

看完了,,还没看明白你这章说的什么。
2 楼 cucaracha 2014-03-27  
jahu 写道
不知所然,

NIO.2 系列请参考前后博文。
1 楼 jahu 2014-03-27  
不知所然,

相关推荐

    Pro Java 7 NIO.2.pdf

    第九章讲解了异步通道API,这是NIO.2中另一个重要的改进。 ### 12. 总结 第十章总结了NIO.2中最重要的知识点。 综上所述,《Pro Java 7 NIO.2》是一本全面深入地介绍了Java 7中NIO.2特性的书籍,对于希望掌握Java...

    java开发的管理文件系统

    8. 文件权限管理:Java 7引入了NIO.2,提供了`java.nio.file.Files`和`java.nio.file.attribute`包,可以进行文件权限的设置和查询。 9. 文件监控:通过`java.nio.file.FileSystem`和`java.nio.file.FileSystems`类...

    java处理各种文件代码

    它提供了一些静态方法来创建、删除、重命名文件和目录,以及获取文件属性(如大小、最后修改时间等)。 4. **FileInputStream和FileOutputStream的使用**:使用这两个类可以读写二进制文件,如图片、音频或视频文件...

    测试用例之java文件基本操作.zip

    10. **NIO.2 API** Java 7引入了NIO.2,提供了新的文件系统操作API,如`Files`和`Paths`类,它们提供了更现代且强大的文件操作功能,例如异步文件操作、权限管理、遍历文件树等。 理解并熟练运用上述知识点,你就...

    文件管理系统---java

    5. **文件属性获取**:通过`File.length()`获取文件大小,`Files.getLastModifiedTime()`得到最后修改时间,`Files.exists()`检查文件是否存在。 6. **文件过滤**:使用`Files.newDirectoryStream()`结合`...

    第八次课IO操作二.zip

    NIO.2提供了更强大和灵活的文件系统操作,如Path类、Files类等,可以方便地获取文件属性、操作路径、检查文件权限等。 通过学习“第八次课IO操作二”,开发者能掌握Java IO的基本原理和常用操作,为实现各种复杂的...

    Java_Advanced_Programming_File_Directory_code.rar_java programmi

    Java 7引入的`java.nio.file.FileSystemWatcher`服务可以监控文件系统的变化,如文件的创建、修改和删除事件,这在实时系统和日志处理中非常有用。 7. **文件遍历**: 使用`Files.walk()`或`File.listFiles()`...

    java 模拟windows文件操作

    - **设置属性**: Java API不直接支持设置文件属性,但可以通过第三方库如Apache Commons IO实现。 6. **NIO(非阻塞I/O)** - **通道(Channels)**: NIO引入了通道的概念,如`FileChannel`,可以从文件中读取数据...

    JAVA_API1.6文档(中文)

    javax.sql.rowset.spi 第三方供应商在其同步提供者的实现中必须使用的标准类和接口。 javax.swing 提供一组“轻量级”(全部是 Java 语言)组件,尽量让这些组件在所有平台上的工作方式都相同。 javax.swing....

    Java文件操作源码大全

    9. **文件属性**:`File`类的`length()`获取文件大小,`lastModified()`获取最后修改时间。 10. **文件操作的权限与安全**:在进行文件操作时,需要考虑到权限问题,避免因权限不足导致的异常。 11. **文件加密和...

    Java语言程序设计 第10版 进阶篇 中文part1(共2部分) Y.Daniel Liang 梁勇

    《Java语言程序设计 第10版 进阶篇》是由著名计算机教育家Y. Daniel Liang(梁勇)编著的一本经典Java编程教材。本书是针对已经掌握Java基础的读者,旨在深入探讨Java的高级特性和应用。Part1部分是整个教材的第一半...

    Java版文件系统

    4. **文件属性和权限**:通过`File`类的方法,可以获取文件的大小、创建时间、最后修改时间等属性。同时,Java 7引入了`java.nio.file.attribute`包,可以处理文件权限和元数据。 5. **文件操作异常处理**:在进行...

    java文件操作大全[整理].pdf

    10. **读取文件属性**:`File`类提供了获取文件基本信息的方法,如`exists()`, `isDirectory()`, `length()`, `lastModified()`等。 11. **写入属性**:Java不直接支持写入文件属性,但可以通过第三方库如Apache ...

    JAVA_API_1.7中文.chm

    3. **NIO.2**:Java 7引入了非阻塞I/O的第二版,增加了`java.nio.file`包,提供了文件系统操作的API,如路径操作、文件属性查询、文件观察者等。`Paths`类用于处理文件路径,`Files`类则包含各种文件操作方法。 4. ...

    java高手真经 光盘源码

    javaxml.zip 14.XML属性文件 第4部分(6个程序包) javagui.zip 15.Java GUI库对比实例 javaawt.zip 16.AWT图形界面开发——Java文本编辑器 javamedia.zip 17.AWT多媒体编程——录音机、MP3播放器、视频拍照、...

    Java高手真经(编程基础卷)光盘全部源码 免积分

    javaxml.zip 14.XML属性文件 第4部分(6个程序包) javagui.zip 15.Java GUI库对比实例 javaawt.zip 16.AWT图形界面开发——Java文本编辑器 javamedia.zip 17.AWT多媒体编程——录音机、MP3播放器、视频拍照、...

    java源码:跨平台的文件同步工具 Capivara.rar

    这涉及到文件属性的检查(如大小、修改时间等)以及文件内容的比较。Java的`java.io.File`类提供了文件和目录的遍历方法,而文件内容的比较可能需要用到哈希算法或逐字节比较。 4. **异步与并发**:为了提高性能,...

Global site tag (gtag.js) - Google Analytics