JDK7新特性<4> NIO2.0 文件系统
JDK7新特性四 NIO2.0 文件系统?java.io.File 不够完美吧。Jdk7提供了一套新的文件系统,会让你满意的。先来
JDK7新特性<四> NIO2.0 文件系统
?
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
?
1 楼 BruceXX 2011-05-18 Watch a Directory for Change (监听文件更改)
这个应该是比较好的一个东西。 2 楼 janeky 2011-05-19 BruceXX 写道Watch a Directory for Change (监听文件更改)
这个应该是比较好的一个东西。
http://janeky.iteye.com/blog/1049328 更新了这部分的内容,感兴趣的可以了解下 3 楼 javabkb 2011-05-31 监听文件更改 这个功能应该很有用