`
janeky
  • 浏览: 366546 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

JDK7新特性<四> NIO2.0 文件系统

    博客分类:
  • jdk7
阅读更多

 

java.io.File 不够完美吧。Jdk7提供了一套新的文件系统,会让你满意的。

先来聊聊java.io.File的七宗罪吧:)

 

 

1.很多方法失败时候都没有抛出异常,很难查找原因

2.方法 rename 在不同平台中运行有问题

3.不能真正支持 symbolic links

4.不能读取文件的更详细属性,比如权限,所有者……

5.访问 文件的 metadata 效率低下

6.很多方法性能不行。例如处理比较大的目录

7.无法递归查找文件树,以及存在循环的symbolic links可能造成问题

 

 

    本次jdk7更新了很多新的api。方法太多了,我就不一一列举了,感兴趣的可以去查阅api

 

  http://download.java.net/jdk7/docs/api/java/nio/file/package-summary.html

 


主要包括:

FileSystem 提供了许多方法来获得当前文件系统的相关信息。

        Path 处理路径(文件和目录),包括

创建path,Paths.get(String s)

获得path的详细信息 getName(),getXX()…

删除path的冗余信息 toRealPath

转换path toAbsolutePath()

合并两个path resolve()

在两个path之间创建相对路径 relativeze()

比较路径 equal() startsWith(),endWith()

Files 支持各种文件操作,包括

移动文件,
复制文件,
删除文件,
更详细的文件属性,包括文件权限,创建者,修改时间……
Walking  the File Tree(递归遍历文件树) 
Watch a Directory for Change (监听文件更改) 

  (最后两点,我近期会更新一些相关的范例)

         更多的jdk7文章,欢迎访问http://janeky.iteye.com/category/157060

 

分享到:
评论
3 楼 javabkb 2011-05-31  
监听文件更改 这个功能应该很有用
2 楼 janeky 2011-05-19  
BruceXX 写道
Watch a Directory for Change (监听文件更改)  

这个应该是比较好的一个东西。


http://janeky.iteye.com/blog/1049328 更新了这部分的内容,感兴趣的可以了解下
1 楼 BruceXX 2011-05-18  
Watch a Directory for Change (监听文件更改)  

这个应该是比较好的一个东西。

相关推荐

    JDK7新特性(完整篇)

    4. **JDK7新特性&lt;四&gt; NIO2.0 文件系统** NIO2(非阻塞I/O的第二版)带来了全新的文件系统接口,包括Path API、WatchService API等,提供了异步文件操作和文件事件监听的能力,极大地提升了文件操作的灵活性和性能。...

    利用JDK7的NIO2.0进行I/O读写和监视

    学习和理解JDK7的NIO2.0对于提升Java应用的性能和可扩展性至关重要,尤其是在处理大量I/O操作的场景下,如文件服务器、日志系统或者大型数据处理应用。同时,NIO2.0的异步特性也为编写高并发、非阻塞的代码提供了...

    JDK6的新特性

    Java Development Kit (JDK) 6是Java编程语言的一个重要版本,它引入了许多新特性,极大地提升了开发效率和应用程序性能。以下将详细阐述JDK6的一些核心新特性: 1. **改进的编译器(Project Coin)** JDK 6中的...

    jdk1.7 java官网正式版Windows 64位-jdk-7u80-windows-x64.exe

    在文件系统操作方面,JDK 1.7引入了NIO.2(New IO 2.0),提供了更好的异步I/O支持和更高级的文件操作,如文件通道、路径API和文件属性查询等。这些新特性极大地提高了开发者处理文件系统的灵活性和效率。 在安全性...

    jdk1.7-7u79-windows32-i586

    在文件I/O方面,NIO.2(New IO 2.0)提供了更高级别的文件系统操作,如路径操作、文件属性查询、异步I/O等,为开发者提供了更多便利。 此外,类型推断的增强使得局部变量类型声明更简洁,如`var list = new ...

    JDK1.7(JavaSE1.7/JDK7)

    在文件系统API上,Java7引入了NIO.2(New IO 2.0),提供了更为强大和灵活的文件操作接口,如Path、Files和Paths类,支持异步I/O操作,使得文件操作更为高效。 在并发编程领域,JDK7引入了Fork/Join框架,这是一种...

    JDK6的新特性(DOC)

    - **文件系统API增强** - 新的java.nio.file包提供了更强大的文件操作功能,包括文件路径操作、文件属性访问以及异步I/O。 4. **改进的JDBC** - **JDBC 4.0** - 提供了自动注册驱动、改进的异常处理机制和更强大...

    jdk7 64位安装版

    5. **文件系统API**:NIO.2(New I/O 2.0)引入了一套新的文件系统API,提供了更加灵活和强大的文件操作功能。 二、JDK7的运行环境 JDK7包含了Java虚拟机(JVM)和Java系统类库,这两部分构成了Java程序运行的基础...

    JDK7 API 中文 文档.CHM

    1. **语言特性:**JDK7引入了一些新的语言特性,如**自动资源管理**(try-with-resources)、**多线程并发工具**的增强、**钻石操作符**(&lt;&gt;)简化泛型实例化、**字符串内联**优化、**类型推断**增强等。这些新特性极...

    jdk7 x64位

    3. **类型推断**:Java 7的泛型引入了钻石操作符&lt;&gt;,在创建匿名类实例时可以简化类型参数的指定。 4. **文件API增强**:NIO.2(New I/O 2.0)提供了更强大的文件操作能力,如Path类、Files类和文件属性查询等。 5. *...

    jdk1.7.0_17

    此外,Java 7引入了File API的重大改进,尤其是NIO.2(New I/O 2.0),提供了一套全新的文件系统操作API,支持异步I/O,以及更好的路径和文件属性处理。例如,`Files` 类提供了大量实用方法,如创建、删除、移动文件...

    jdk1.6新特性 下载

    7. **NIO.2** - JDK 1.6引入了新的非阻塞I/O API,也称为NIO.2或Java New I/O 2,提供了异步I/O操作,这在处理大量并发连接时非常有效。 8. **改进的国际化和本地化** - 支持更多的字符集和语言,以及对Unicode 5.1...

    java jdk1.6 新特性 jaxb2 demo

    Java NIO(New I/O)在1.6版本中引入了NIO.2,提供了更高级别的文件系统操作API,如异步I/O、文件通道、文件属性和文件遍历等,增强了Java对非阻塞I/O的支持。 5. **Scripting API**: JSR 223引入了脚本引擎接口...

    JDK7api JDKAPI

    1. **NIO.2(New I/O 2.0)**:JDK7引入了NIO.2,提供了一组新的文件I/O API,支持异步I/O操作,增强了文件路径处理,以及文件属性查询等功能。 2. **Path接口**:替代了旧的File类,提供了一种更抽象的方式来表示...

    jdk7 jdk1.7

    3. **更好的文件I/O API**:NIO.2(New IO 2.0)是Java 7中的一个重要改进,提供了异步文件操作和文件路径API,使得处理文件系统操作更加简单和高效。 4. **钻石操作符**:在创建泛型实例时,可以省略尖括号中的...

    JDK6.0新特性(转过来的)

    新的非阻塞I/O API,也被称为NIO 2或New I/O 2,提供了对文件系统操作的异步支持,如异步读写、文件观察者等。`java.nio.file`包下的类和接口提供了更丰富的文件操作功能,比如文件通道、文件属性和路径操作。 4. ...

    [免费] jdk7 api文档

    6. **文件系统API**:NIO.2(New IO 2.0)提供了一组新的文件系统操作接口,包括`Files`类和`Path`接口,使得文件操作更加灵活且易于使用。 7. **集合改进**:在Java 7中,集合框架得到了增强,例如`Collections....

    jdk-7u1-windows-x64 64位 windows jdk1.7

    2. **文件系统API增强**:NIO.2(New I/O 2.0)提供了一套新的文件系统API,使开发者能够以更加面向对象的方式处理文件操作,包括文件路径、文件属性和异步I/O操作。 3. **try-with-resources**:这个语法糖允许在...

    JDK1.6 新特性 做服务器

    NIO.2引入了新的文件系统API,提供异步I/O操作,使得文件读写更加高效,尤其在服务器处理大量并发I/O请求时。新API还支持文件属性查询、文件锁定等功能。 6. **增强的JDBC** JDK1.6增强了JDBC驱动,提供了更好的...

    jdk-7u80-windows-x64.exe

    3. **文件系统API增强**:NIO.2(New I/O 2.0)引入了更现代的文件系统API,提供了异步I/O操作、路径、文件属性以及文件系统查询等功能。 4. **try-with-resources语句**:这一新特性使得资源管理更加方便,自动...

Global site tag (gtag.js) - Google Analytics