关于问题我在java通过ftp(ssl) 连接ftp服务器成功,怎么list文件中已描述:
具体就是 在通过使用FTPSClient类进行ssl ftp的连接 可以连接成功,但list() ,listNames()或listFiles() 为null.
解决办法:
在ist方法之前调用了
SocketFactory factory = SSLSocketFactory.getDefault();
sftpClient.setSocketFactory(factory);
具体为:
sftpClient.enterLocalPassiveMode();
/* important */
SocketFactory factory=null;
factory= SSLSocketFactory.getDefault();
sftpClient.setSocketFactory(factory);
/* list所在目录的文件 返回文件名到数组中
通过for循环进行遍历控制台打印
*/
String[] fileNames = sftpClient.listNames();
for(String fileName:fileNames){
logger.info(fileName);
}
然后listFiles(). 成功!
1.为什么调用此方法后 就可以list文件了?
初步分析:sftpclient(FTPSClient)连接方法是调用父类(FTPClient)方法,而其本身使用的ssl加密的相关方法在父类中并没有被实现,此方法(setSocketFactory)作用是调用设置了生成此类的工厂为SSLSocketFactory,进而实现ssl的相关功能.
备注: 由于本人代码写的较乱,没有粘贴完整代码,若有需要欢迎留言所要.
分享到:
相关推荐
本程序基于SSL/TLS协议的三元组认证的安全文件传输系统的设计和实现。采用java实现,java对SSL/TLS协议和加密技术封装的比较好,有兴趣可以下下来看一下
1.使用curl库实现ftp查询根目录下所有文件与目录,递归遍历所有目录并下载文件
QT5.7ftp客户端包含单文件上传下载及服务器文件删除。
C# ftp连接到服务器,可从服务器上下载或上传文件!亲测可用!
MFC实现的利用ftp上传和下载文件的完整程序代码,包括客户端和服务器端,希望能够给需要的人以参考!
使用前端插件上传文件到ftp服务器,上传配置灵活,通过配置文件即可配置文件类型大小,还有ftp服务器连接信息
ftpClient.changeWorkingDirectory(path); ftpClient.enterLocalPassiveMode(); //由于apache不支持中文语言环境,通过定制类解析中文日期类型 ... FTPFile[] files = ftpClient.listFiles();
FTP服务器单文件绿色版FTPServer
FtpList部分是用来显示FTP服务器上的文件; GetButton部分为从FTP服务器下传一个文件; PutButton部分为向FTP服务器上传一个文件。 别忘了在程序中还要引入两个库文件(import sun.net.*,import sun.net.ftp.*)。 以下...
解决了某些系统中,ftpClient.listFiles()返回值总是为空的问题。 使用方法如下: ftpClient.changeWorkingDirectory(path); ftpClient.enterLocalPassiveMode(); ftpClient.configure(new FTPClientConfig(...
FTP文件管理系统可以对本地及FTP服务器端的文件就行管理,通过该系统可以对文件进行上传和下载的操作。主要实现以下目标:复制、剪切本地文件;粘贴、删除本地文件;上传本地文件或文件夹;从服务器端下载文件;在...
linux 下 ftp 客户端,实现扫描ftp服务器端文件,把列表保存到数据库中 编辑执行步骤//g++ -I.. -c rlftp.cpp ConfigParser.cpp ConfigParser.h //g++ -L.. -o rlftp rlftp.o ConfigParser.o -lftp++ -lmysqlclient ...
ftp,连接vps互传文件ftp,连接vps互传文件ftp,连接vps互传文件ftp,连接vps互传文件ftp,连接vps互传文件ftp,连接vps互传文件
对FTP服务器文件的基本操做:上传下载递归目录遍历等。
Serv-U是一种被广泛运用的FTP服务器端软件,支持3x/9x/ME/NT/2K等全Windows系列。可以设定多个FTP服务器、限定登录用户的权限、登录主目录及空间大小等,功能非常完备。 它具有非常完备的安全特性,支持SSl FTP传输...
winfrom连接FTP站点上传文件,并能读取FTp站点内文件,
ftp ssl 上传组件 for Powerbuilder ,用于 ftp ssl tls 的上传
类似于ftp的网页版服务器端文件管理系统,使用sqlite数据库
基于C#的ftp服务器端设计基于C#的ftp服务器端设计基于C#的ftp服务器端设计基于C#的ftp服务器端设计
能简单地连接服务器,上传文件 比如远程连接ftp服务器,通过简单的拖拽实现。