Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 检查FTP服务器是否支持MLSD_Java_Ftp Client_Apache Commons Net - Fatal编程技术网

Java 检查FTP服务器是否支持MLSD

Java 检查FTP服务器是否支持MLSD,java,ftp-client,apache-commons-net,Java,Ftp Client,Apache Commons Net,我正在使用apache.commons.net.FTPClient从客户那里获取一些文件,但我发现有一个ftpserver没有按其应有的方式处理命令列表,因为它总是返回当前目录,而不是我指定的目录 我发现mlistFile(MLSD)在那台机器上工作得很好 我的问题是: 有没有办法通过apache.commons.net了解我是否应该使用MLD或LIST commnad 有旗帜之类的吗 谢谢以下是我的发现(可能太晚了?):您可以在FTPClient对象上调用函数listHelp(),以获得远程服

我正在使用apache.commons.net.FTPClient从客户那里获取一些文件,但我发现有一个ftpserver没有按其应有的方式处理命令列表,因为它总是返回当前目录,而不是我指定的目录

我发现mlistFile(MLSD)在那台机器上工作得很好

我的问题是: 有没有办法通过apache.commons.net了解我是否应该使用MLD或LIST commnad

有旗帜之类的吗

谢谢

以下是我的发现(可能太晚了?):您可以在FTPClient对象上调用函数listHelp(),以获得远程服务器识别的命令。您可以得到如下输出:

214-The following commands are recognized.
 ABOR ACCT ALLO APPE CDUP CWD  DELE EPRT EPSV FEAT HELP LIST MDTM MKD
 MODE NLST NOOP OPTS PASS PASV PORT PWD  QUIT REIN REST RETR RMD  RNFR
 RNTO SITE SIZE SMNT STAT STOR STOU STRU SYST TYPE USER XCUP XCWD XMKD
 XPWD XRMD
您只需检查MLSD是否在列表中。

以下是我的发现(可能太晚了?):您可以在FTPClient对象上调用函数listHelp(),以获取远程服务器识别的命令。您可以得到如下输出:

214-The following commands are recognized.
 ABOR ACCT ALLO APPE CDUP CWD  DELE EPRT EPSV FEAT HELP LIST MDTM MKD
 MODE NLST NOOP OPTS PASS PASV PORT PWD  QUIT REIN REST RETR RMD  RNFR
 RNTO SITE SIZE SMNT STAT STOR STOU STRU SYST TYPE USER XCUP XCWD XMKD
 XPWD XRMD
您只需检查MLSD是否在列表中。

您可以使用“FEAT”命令。 它显示您可以使用的命令。

您可以使用“专长”命令。
它显示了您可以使用的命令。

您只需发送mlsd命令并检查回复代码即可。如果您得到一个202代码,请尝试列表。(请参阅此处的代码:)是否有更优雅的方法来执行此操作?您可以只发送mlsd命令并检查回复代码。如果您得到一个202代码,请尝试列表。(参见此处代码:)难道没有更优雅的方法吗?