93

因为我没有收到上一个问题的肯定答案。我将尝试自己编写一个 Java FTP 上传小程序。

我的问题是:“你能推荐一个 Java FTP 客户端库供我使用吗?”

我希望它是:

  • 稳定的
  • 能够处理被动和主动模式
  • 能够提供上传进度信息
  • 如果出现问题,抛出可捕获的异常(尤其是当上传不成功时)
  • 便宜/免费使用,最好是开源的

我找到了一些图书馆的 概述,但由于这篇文章是从 2003 年开始的,也许已经发生了一些新的发展:)

4

9 回答 9

57

查看包含 FTP 实用程序的 Apache commons-net 。我不知道它是否满足您的所有要求,但它肯定是免费的!

于 2008-11-17T10:30:25.540 回答
17

ftp4j 是最好的,无论是功能还是许可证:

http://www.sauronsoftware.it/projects/ftp4j/

于 2010-03-12T13:27:54.037 回答
6

我使用了 Apache Commons VFS

青色

于 2008-11-17T15:14:40.943 回答
6

是的,EnterpriseDT 的edtFTPj是稳定的(2000 年首次发布),具有您可能需要的所有功能,并且也是开源的。

它被用于大量开源项目(以及许多商业项目)中,并且被公认为.

正如另一张海报所指出的,如果您确实希望升级到 SFTP 和/或 FTPS,这是一个简单的升级路径,只需要很少的代码更改。

于 2009-06-04T07:07:57.300 回答
4

Commons-net 肯定。:) 现在大多数开源项目都在使用它。

yc

于 2008-11-17T11:28:17.420 回答
1

我已经成功使用了免费开源的Enterprise DT FTP库。我无法将它与其他库(如 Apache Commons Net 库)进行比较,因为我没有使用它们。它确实提供了到 SFTP(通过 SSH)和 FTPS(通过 SSL)的简单升级路径,尽管这是一种付费商业产品。

于 2008-11-17T19:33:01.530 回答
1

Apache commons-nets 最近更新得更频繁,而 Enterprise DT 库似乎更新得更频繁。

于 2008-11-21T01:04:46.023 回答
0

您还有这篇2006 年的文章,其中列出了 FTP 客户端的不同选项。

commons-net 很好,但FTP-GO可以为您提供一些您正在寻找的更高级的功能。

kagi Ftp-Go

于 2008-11-17T11:11:44.583 回答
0

我正在下载视频文件。Apache 的 FTPClient 失败了,它以相当快的速度下载了视频。但是当我尝试播放视频时,它会从视频中间丢失大块。ftp4j 会毫无损失地下载整个视频。

ftp4j ftw

于 2012-10-31T03:56:24.580 回答