Commons-VFS文件系统统一接口

联合创作 · 2023-09-28 22:27

VFS把对各种各样的的文件系统的访问封装成统一的应用程序接口,这大大的简化了应用程序本身代码的复杂度。Apache上的项目的稳定性也是有目共睹的,目前VFS支持下面一些文件系统,当然你也可以自行进行扩展。

  • FTP

  • Local Files

  • HTTP and HTTPS

  • SFTP

  • Temporary Files

  • Zip, Jar and Tar (uncompressed, tgz or tbz2)

  • gzip and bzip2

  • res

  • ram

    而这些文件系统中的文件被封装成了FileObject这个类,文件的读写操作通过此类来操作。文件的路径采用了URL的方式,例如:

  • file:///somedir/some%25file.txt

  • 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

    看看上面这些示例,最后一个让我觉得惊奇,居然直接可以读取邮件附件,太强了。

    Commons-VFS的Javadoc文档:http://www.oschina.net/uploads/doc/commons-vfs-1.0/index.html

浏览 13
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报