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 (监听文件更改)
分享到:
相关推荐
1.4 JDK7新特性<四> NIO2.0 文件系统 . . . 1.5 JDK7新特性<五> fork/join 框架 . . . . . 1.6 JDK7新特性<六> 监听文件系统的更改 1.7 JDK7新特性<七> 遍历文件树 . . . . . . . 1.8 JDK7新特性<八>异步io/AIO ...
<groupId>javax.activation</groupId> <artifactId>javax.activation-api</artifactId> <version>1.2.0</version> </dependency> <dependency> <groupId>javax.xml.bind</groupId> <artifactId>jaxb-api</...
<version>2.1.7.js7</version> <scope>compile</scope> <optional>false</optional> <exclusions> <exclusion> <groupId>org.bouncycastle</groupId> <artifactId>bcmail-jdk15on</artifactId> </exclusion> ...
本TXT文件为第一章:Linux 下安装 JDK<br>测试环境:系统 CentOS 5.2<br>第一步:查看Linux自带的JDK是否已安装并卸载……<br>第二步:安装JDK步骤……<br>第三步:配置环境变量<br>三步完成安装<br>其他安装请见<br...
Jdk5.0 源代码使用说明<br><br>1. 类型基本操作<br>2. 面向对象的操作 适配器模式 单列模式 工程模式 组合模式。... J2se5新特性<br>17. XML操作<br>18. Email操作<br>19. Servlet 事例<br><br><br>
<br><br>本系统是Web模式的在线考试管理系统<br><br>运行环境:Tomact+JDK<br><br>编程模式:JSP+JavaBean+JavaServlet<br><br>后台数据库:MS-Access<br><br>系统主要完成的功能如下:<br><br>.基本信息管理 考生...
<br><br>本系统是WEB模式的新闻发布管理系统<br>运行环境:Tomact+JDK<br>编程模式:JSP+JavaBean+JavaServlet<br>后台数据库:MySql\Access<br><br>系统主要完成的功能如下:<br><br>管理员(后台)<br>.系统管理:用户...
<br><br>本系统是Web模式的办公自动化系统<br><br>运行环境:Tomact+JDK<br>编程模式:JSP+JavaBean+JavaServlet<br>后台数据库:MS-Access<br><br>系统主要功能简介:<br><br>.信息中心 <br><br>.内部电子邮件<br>...
<br>SWT可交互式Browser控件<br>JDK配置(注意)<br>RIA简介(第一部分)<br>在 Eclipse 中嵌入 NASA World Wind Java SDK,<br>用3DES加密解密 BadPaddingException<br>Web Service 打包生成aar文件<br>什么是反射...
<br><br>本系统是WEB模式的实验室教学管理系统<br>运行环境:Tomact+JDK<br>编程模式:JSP+JavaBean+JavaServlet<br>后台数据库:MS-Access<br><br>系统特点:<br><br>1.基于免费环境开发 jdk+Tomcat+Ms-Access<br>2....
<br><br>本系统是WEB模式的实验室教学管理系统<br>运行环境:Tomact+JDK<br>编程模式:JSP+JavaBean+JavaServlet<br>后台数据库:MS-Access\MySql<br><br>系统特点:<br><br>1.基于免费环境开发 jdk+Tomcat+Ms-Access...
<br><br>本系统是WEB模式的航空订票系统管理系统<br>运行环境:Tomact+JDK<br>编程模式:JSP+JavaBean+JavaServlet<br>后台数据库:MS-Access<br><br>系统主要完成的功能如下:<br><br> _订票信息管理功能 _客机信息...
<br><br>本系统是WEB模式的航空订票系统管理系统<br>运行环境:Tomact+JDK<br>编程模式:JSP+JavaBean+JavaServlet<br>后台数据库:MS-Access<br><br>系统主要完成的功能如下:<br><br> _订票信息管理功能 _客机信息...
For example:<br><br> jad -o -dtest -sjava *.class<br><br> (or jad -o -d test -s java *.class, which has the same effect)<br><br>This command decompiles all .class files in the current directory <br>...
<br><br><br>安装和配置jdk6.0和tomcat6.0<br><br><br><br>调试(jsp):<br><br><br><br>1.到Tomcat的安装目录的webapps目录,可以看到ROOT,examples, tomcat-docs之类Tomcat自带的的目录.<br><br><br><br>2.在...
认识Java<br>第2章 下载和安装JDK5.0<br>第3章 选择开发工具IDE<br>第2篇 Java语言基础<br>第4章 Java基本语法<br>第5章 Java面向对象程序设计(上)<br>第6章 Java面向对象程序设计(下)<br>第7章 Java异常处理...
<br> 运行平台:<br> Liunx + JDK + Apache + Tomcat + MYSQL 或 Windows2000(WindowsNT、Windows98) + JDK + Apache + Tomcat + MYSQL<br> 软件开发环境采用<br> RedHat Linux 7.0<br> JDK1.3 For Linux<br> ...
系统功能介绍: <br> 管理员功能 :<br> <br> 添加用户<br> 查看所有用户<br> 增加班费收入<br> 增加班费支出<br> 查看所有班费详细记录<br> 查看班费总帐<br><br> 普通用户功能:<br><br> 查看班费总帐<br><br><br>...
<Signature>sNLLKGMUdF0r8O1kKilWAGdgfs2BvJb/2Xp8p5iuDVfZXmhppo+d0Ran1P9TKdjV4ABwAgKXxJ3jcQTqE/2IRfqwnPf8itN8aFZlV3TJPYeD3yWE7IT55Gz6EijUpC7aKeoohTb4w2fpox58wWoF3SNp6sK6jDfiAUGEHYJ9pjU=</Signature> ...
SAMBA服务器<br>第6章 OPENSSH服务器 <br>第7章 Tomcat(jdk) <br>第8章 工具使用(crt xmanager)<br>第9章 Nfs 文件系统使用<br>第10章 磁盘配额<br>大实验 远程安装linux <br>第三部分 shell...