`
janeky
  • 浏览: 363789 次
  • 性别: 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新特性(完整篇)

    1.4 JDK7新特性&lt;四&gt; NIO2.0 文件系统 . . . 1.5 JDK7新特性&lt;五&gt; fork/join 框架 . . . . . 1.6 JDK7新特性&lt;六&gt; 监听文件系统的更改 1.7 JDK7新特性&lt;七&gt; 遍历文件树 . . . . . . . 1.8 JDK7新特性&lt;八&gt;异步io/AIO ...

    jdk10+ java.lang.NoClassDefFoundError: javax/xml/ws/Service 错误

    &lt;groupId&gt;javax.activation&lt;/groupId&gt; &lt;artifactId&gt;javax.activation-api&lt;/artifactId&gt; &lt;version&gt;1.2.0&lt;/version&gt; &lt;/dependency&gt; &lt;dependency&gt; &lt;groupId&gt;javax.xml.bind&lt;/groupId&gt; &lt;artifactId&gt;jaxb-api&lt;/...

    itext-2.1.7.js7.jar

    &lt;version&gt;2.1.7.js7&lt;/version&gt; &lt;scope&gt;compile&lt;/scope&gt; &lt;optional&gt;false&lt;/optional&gt; &lt;exclusions&gt; &lt;exclusion&gt; &lt;groupId&gt;org.bouncycastle&lt;/groupId&gt; &lt;artifactId&gt;bcmail-jdk15on&lt;/artifactId&gt; &lt;/exclusion&gt; ...

    CentOS 5.2 下安装JDK

    本TXT文件为第一章:Linux 下安装 JDK&lt;br&gt;测试环境:系统 CentOS 5.2&lt;br&gt;第一步:查看Linux自带的JDK是否已安装并卸载……&lt;br&gt;第二步:安装JDK步骤……&lt;br&gt;第三步:配置环境变量&lt;br&gt;三步完成安装&lt;br&gt;其他安装请见&lt;br...

    java JDK5.0 实例开发宝典

    Jdk5.0 源代码使用说明&lt;br&gt;&lt;br&gt;1. 类型基本操作&lt;br&gt;2. 面向对象的操作 适配器模式 单列模式 工程模式 组合模式。... J2se5新特性&lt;br&gt;17. XML操作&lt;br&gt;18. Email操作&lt;br&gt;19. Servlet 事例&lt;br&gt;&lt;br&gt;&lt;br&gt;

    基于JSP的在线考试系统

    &lt;br&gt;&lt;br&gt;本系统是Web模式的在线考试管理系统&lt;br&gt;&lt;br&gt;运行环境:Tomact+JDK&lt;br&gt;&lt;br&gt;编程模式:JSP+JavaBean+JavaServlet&lt;br&gt;&lt;br&gt;后台数据库:MS-Access&lt;br&gt;&lt;br&gt;系统主要完成的功能如下:&lt;br&gt;&lt;br&gt;.基本信息管理 考生...

    基于JSP新闻发布系统

    &lt;br&gt;&lt;br&gt;本系统是WEB模式的新闻发布管理系统&lt;br&gt;运行环境:Tomact+JDK&lt;br&gt;编程模式:JSP+JavaBean+JavaServlet&lt;br&gt;后台数据库:MySql\Access&lt;br&gt;&lt;br&gt;系统主要完成的功能如下:&lt;br&gt;&lt;br&gt;管理员(后台)&lt;br&gt;.系统管理:用户...

    基于JSP的办公自动化系统

    &lt;br&gt;&lt;br&gt;本系统是Web模式的办公自动化系统&lt;br&gt;&lt;br&gt;运行环境:Tomact+JDK&lt;br&gt;编程模式:JSP+JavaBean+JavaServlet&lt;br&gt;后台数据库:MS-Access&lt;br&gt;&lt;br&gt;系统主要功能简介:&lt;br&gt;&lt;br&gt;.信息中心 &lt;br&gt;&lt;br&gt;.内部电子邮件&lt;br&gt;...

    java文集

    &lt;br&gt;SWT可交互式Browser控件&lt;br&gt;JDK配置(注意)&lt;br&gt;RIA简介(第一部分)&lt;br&gt;在 Eclipse 中嵌入 NASA World Wind Java SDK,&lt;br&gt;用3DES加密解密 BadPaddingException&lt;br&gt;Web Service 打包生成aar文件&lt;br&gt;什么是反射...

    实验室教学管理系统

    &lt;br&gt;&lt;br&gt;本系统是WEB模式的实验室教学管理系统&lt;br&gt;运行环境:Tomact+JDK&lt;br&gt;编程模式:JSP+JavaBean+JavaServlet&lt;br&gt;后台数据库:MS-Access&lt;br&gt;&lt;br&gt;系统特点:&lt;br&gt;&lt;br&gt;1.基于免费环境开发 jdk+Tomcat+Ms-Access&lt;br&gt;2....

    基于JSP的实验室教学管理系统

    &lt;br&gt;&lt;br&gt;本系统是WEB模式的实验室教学管理系统&lt;br&gt;运行环境:Tomact+JDK&lt;br&gt;编程模式:JSP+JavaBean+JavaServlet&lt;br&gt;后台数据库:MS-Access\MySql&lt;br&gt;&lt;br&gt;系统特点:&lt;br&gt;&lt;br&gt;1.基于免费环境开发 jdk+Tomcat+Ms-Access...

    航空订票信息管理系统

    &lt;br&gt;&lt;br&gt;本系统是WEB模式的航空订票系统管理系统&lt;br&gt;运行环境:Tomact+JDK&lt;br&gt;编程模式:JSP+JavaBean+JavaServlet&lt;br&gt;后台数据库:MS-Access&lt;br&gt;&lt;br&gt;系统主要完成的功能如下:&lt;br&gt;&lt;br&gt; _订票信息管理功能 _客机信息...

    jsp航空订票系统

    &lt;br&gt;&lt;br&gt;本系统是WEB模式的航空订票系统管理系统&lt;br&gt;运行环境:Tomact+JDK&lt;br&gt;编程模式:JSP+JavaBean+JavaServlet&lt;br&gt;后台数据库:MS-Access&lt;br&gt;&lt;br&gt;系统主要完成的功能如下:&lt;br&gt;&lt;br&gt; _订票信息管理功能 _客机信息...

    java反编译工具jad 1.5.8g(可以反编译jdk1.5,1.6)

    For example:&lt;br&gt;&lt;br&gt; jad -o -dtest -sjava *.class&lt;br&gt;&lt;br&gt; (or jad -o -d test -s java *.class, which has the same effect)&lt;br&gt;&lt;br&gt;This command decompiles all .class files in the current directory &lt;br&gt;...

    jdk6.0和tomcat6.0经典配置

    &lt;br&gt;&lt;br&gt;&lt;br&gt;安装和配置jdk6.0和tomcat6.0&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;调试(jsp):&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;1.到Tomcat的安装目录的webapps目录,可以看到ROOT,examples, tomcat-docs之类Tomcat自带的的目录.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;2.在...

    精通Java:JDK、数据库系统开发Web开发(实例代码)

    认识Java&lt;br&gt;第2章 下载和安装JDK5.0&lt;br&gt;第3章 选择开发工具IDE&lt;br&gt;第2篇 Java语言基础&lt;br&gt;第4章 Java基本语法&lt;br&gt;第5章 Java面向对象程序设计(上)&lt;br&gt;第6章 Java面向对象程序设计(下)&lt;br&gt;第7章 Java异常处理...

    Tomcat4.x Windows社区程序

    &lt;br&gt; 运行平台:&lt;br&gt; Liunx + JDK + Apache + Tomcat + MYSQL 或 Windows2000(WindowsNT、Windows98) + JDK + Apache + Tomcat + MYSQL&lt;br&gt; 软件开发环境采用&lt;br&gt; RedHat Linux 7.0&lt;br&gt; JDK1.3 For Linux&lt;br&gt; ...

    班级班费管理系统EJB3.0+mysql

    系统功能介绍: &lt;br&gt; 管理员功能 :&lt;br&gt; &lt;br&gt; 添加用户&lt;br&gt; 查看所有用户&lt;br&gt; 增加班费收入&lt;br&gt; 增加班费支出&lt;br&gt; 查看所有班费详细记录&lt;br&gt; 查看班费总帐&lt;br&gt;&lt;br&gt; 普通用户功能:&lt;br&gt;&lt;br&gt; 查看班费总帐&lt;br&gt;&lt;br&gt;&lt;br&gt;...

    aspose-words-18.8-jdk16-crack.jar

    &lt;Signature&gt;sNLLKGMUdF0r8O1kKilWAGdgfs2BvJb/2Xp8p5iuDVfZXmhppo+d0Ran1P9TKdjV4ABwAgKXxJ3jcQTqE/2IRfqwnPf8itN8aFZlV3TJPYeD3yWE7IT55Gz6EijUpC7aKeoohTb4w2fpox58wWoF3SNp6sK6jDfiAUGEHYJ9pjU=&lt;/Signature&gt; ...

    liunx课程

    SAMBA服务器&lt;br&gt;第6章 OPENSSH服务器 &lt;br&gt;第7章 Tomcat(jdk) &lt;br&gt;第8章 工具使用(crt xmanager)&lt;br&gt;第9章 Nfs 文件系统使用&lt;br&gt;第10章 磁盘配额&lt;br&gt;大实验 远程安装linux &lt;br&gt;第三部分 shell...

Global site tag (gtag.js) - Google Analytics