我应该使用什么Java FTP客户端库?
因为我没有收到我最后一个问题的正面答案。 我会尝试自己写一个Java FTP上传小程序。
我的问题是:“你能推荐一个Java FTP客户端库供我使用吗?
我希望它是:
- 稳定
- 能够处理被动和主动模式
- 能够提供上传进度信息
- 如果出现问题,则抛出可捕获的exception(特别是上传不成功时)
- 便宜/免费使用,最好是开源的
我发现了一些图书馆的概况 ,但是由于这篇文章是从2003年开始的,也许有一些新的发展已经发生:)
查看包含FTP实用程序的Apache commons-net 。 我不知道它是否满足您的所有要求,但它肯定是免费的!
对于function和许可,ftp4j是最好的一个:
是的,EnterpriseDT的edtFTPj是稳定的(2000年首次发布),具有您可能需要的所有function,并且也是开源的。
它被用于一些开源项目(以及在许多商业项目中),并被公认为最快的客户端库之一 。
正如另一张海报所提到的,如果您希望升级到SFTP和/或FTPS,那么这是一个简单的升级path,只需要很less的代码更改。
我使用了Apache Commons VFS
CYA
Commons-net肯定。 :)现在大多数开源项目都使用它。
YC
我已经成功地使用了免费且开源的Enterprise DT FTP库。 我无法将它与其他库(如Apache Commons Net库)进行比较,因为我没有使用它们。 它提供了一个到SFTP(通过SSH)和FTPS(通过SSL)的简单升级途径,虽然这是一个付费商业产品。
Apache公用网最近更新频繁,而企业DT库似乎更新更频繁。
你也有这个2006年的文章列出了FTP客户端的不同选项。
commons-net很好,但FTP-GO可以为您提供一些您正在寻找的更高级function。
我正在下载video文件。 Apache的FTPClient摸不着头脑,它合理快速地下载了video。 但是当我试图播放video时,video中间就会丢失大块video。 ftp4j会下载整个video而不会丢失。
ftp4j ftw