我应该使用什么Java FTP客户端库?

时间:2022-06-05 03:42:51

Since I received no positives answers to my last question. I will try to write a Java FTP upload applet myself.

由于我没有收到我的上一个问题的正面答案。我将尝试自己编写一个Java FTP上传小程序。

My question is: "Can you recommend a Java FTP client library for me to use?"

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

I want it to be:

我希望它是:

  • stable
  • 稳定
  • able to handle passive and active modes
  • 能够处理被动和主动模式
  • able to provide upload progress information
  • 能够提供上传进度信息
  • throw catchable exceptions if something went wrong (especially when an upload does not succeed)
  • 如果出现问题,则抛出可捕获的异常(特别是当上传不成功时)
  • cheap/free to use, preferably open source
  • 便宜/免费使用,最好是开源

I found this overview of some libraries, but since this article is from 2003, maybe some new developments have happened :)

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

9 个解决方案

#1


55  

Check out Apache commons-net, which contains FTP utilities. Off the top of my head I'm not sure if it meets all of your requirements, but it's certainly free!

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

#2


17  

ftp4j is the best one, both for features and license:

对于功能和许可证,ftp4j是最好的:

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

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

#3


7  

Yes, EnterpriseDT's edtFTPj is stable (first released in 2000), has all the features you might need, and is open source as well.

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

It's used in a bunch of open source projects (as well as in many commercial projects), and is acknowledged to be one of the fastest client libraries around.

它被用于一堆开源项目(以及许多商业项目中),并被公认为是最快的客户端库之一。

As another poster noted, if you do wish to upgrade to SFTP and/or FTPS, it is a simple upgrade path with very few code changes required.

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

#4


5  

I used Apache Commons VFS

我使用的是Apache Commons VFS

cya

CYA

#5


4  

Commons-net surely. :) Most open source projects use it these days.

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

yc

YC

#6


1  

I have successfully used the Enterprise DT FTP library, which is free and open source. I can't compare it to other libraries (like the Apache Commons Net library) since I haven't used them. It does provide a simple upgrade path to SFTP (over SSH) and FTPS (over SSL), though that is a pay-for commercial product.

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

#7


1  

Apache commons-nets get updates more frequently recently, while Enterprise DT library seems to update even more frequently.

Apache commons-net最近更频繁地获取更新,而Enterprise DT库似乎更频繁地更新。

#8


1  

You have also this 2006 article which lists different options for FTP clients.

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

commons-net is good, but FTP-GO can give you some of the more advanced features you are looking for.

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

我应该使用什么Java FTP客户端库?

#9


0  

I was downloading video files. Apache's FTPClient fumbled, it downloaded the video reasonably fast. but when I tried to play the video back, it lost chunks out of the middle of the video. ftp4j would download the whole video with no loss.

我正在下载视频文件。 Apache的FTPClient失败了,它合理地快速下载了视频。但是当我试图播放视频时,它从视频中间丢失了一些块。 ftp4j会下载整个视频而不会丢失。

ftp4j ftw

ftp4j ftw

#1


55  

Check out Apache commons-net, which contains FTP utilities. Off the top of my head I'm not sure if it meets all of your requirements, but it's certainly free!

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

#2


17  

ftp4j is the best one, both for features and license:

对于功能和许可证,ftp4j是最好的:

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

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

#3


7  

Yes, EnterpriseDT's edtFTPj is stable (first released in 2000), has all the features you might need, and is open source as well.

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

It's used in a bunch of open source projects (as well as in many commercial projects), and is acknowledged to be one of the fastest client libraries around.

它被用于一堆开源项目(以及许多商业项目中),并被公认为是最快的客户端库之一。

As another poster noted, if you do wish to upgrade to SFTP and/or FTPS, it is a simple upgrade path with very few code changes required.

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

#4


5  

I used Apache Commons VFS

我使用的是Apache Commons VFS

cya

CYA

#5


4  

Commons-net surely. :) Most open source projects use it these days.

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

yc

YC

#6


1  

I have successfully used the Enterprise DT FTP library, which is free and open source. I can't compare it to other libraries (like the Apache Commons Net library) since I haven't used them. It does provide a simple upgrade path to SFTP (over SSH) and FTPS (over SSL), though that is a pay-for commercial product.

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

#7


1  

Apache commons-nets get updates more frequently recently, while Enterprise DT library seems to update even more frequently.

Apache commons-net最近更频繁地获取更新,而Enterprise DT库似乎更频繁地更新。

#8


1  

You have also this 2006 article which lists different options for FTP clients.

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

commons-net is good, but FTP-GO can give you some of the more advanced features you are looking for.

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

我应该使用什么Java FTP客户端库?

#9


0  

I was downloading video files. Apache's FTPClient fumbled, it downloaded the video reasonably fast. but when I tried to play the video back, it lost chunks out of the middle of the video. ftp4j would download the whole video with no loss.

我正在下载视频文件。 Apache的FTPClient失败了,它合理地快速下载了视频。但是当我试图播放视频时,它从视频中间丢失了一些块。 ftp4j会下载整个视频而不会丢失。

ftp4j ftw

ftp4j ftw