Apache的Jakarta-Commons项目刚刚发布一个新的API——VFS 1.0。从名字上来看是关于文件系统的一个好东西,再仔细一看,哇塞,我一直想要一个这样的玩意。
VFS把对各种各样的的文件系统的访问封装成统一的应用程序接口,这大大的简化了应用程序本身代码的复杂度。Apache上的项目的稳定性也是有目共睹的,目前VFS支持下面一些文件系统,当然你也可以自行进行扩展。
而这些文件系统中的文件被封装成了FileObject这个类,文件的读写操作通过此类来操作。文件的路径采用了URL的方式,例如:
zip:// arch-file-uri[! absolute-path] http://[ username[: password]@] hostname[: port][ absolute-path] webdav://[ username[: password]@] hostname[: port][ absolute-path] ftp://[ username[: password]@] hostname[: port][ absolute-path] smb://[ username[: password]@] hostname[: port][ absolute-path] tmp://[ absolute-path] res://[ path] ram:///any/path/to/file.txt mime:file:///your/path/mail/anymail.mime!/filename.pdf
看看上面这些示例,最后一个让我觉得惊奇,居然直接可以读取邮件附件,太强了。
更多的资料您还是自己看看VFS的网页吧: http://jakarta.apache.org/commons/vfs
另外VFS用来支持ISO文件的插件可以看看这里
ISO 9660 - http://loopy.sourceforge.net
反正,俺已经决定在新项目中用这个东西试试了。
心情: 一般