FTP服务器目录列表格式

时间:2016-10-29 17:05:23

标签: c# .net ftp

我正在开发一个从FTP服务器下载文件的应用程序。我收到了FTP服务器的更新和不同的日期时间格式。我无法解析它们。如何找到FTP的不同结果格式?是否有针对不同格式的坐标或一般解决方案?例如,我从不同的服务器收到这些格式:

1- 08-31-16  10:41PM                   95 Global.asax
2- -rw-r--r--    1 0        0          239832 Apr 01  2014 DriverPackSolution.exe

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

对于FTP LIST命令的列表响应格式没有标准或通用解决方案。 LIST命令是ListDirectoryDetails的{​​{1}}方法背后的内容。

有时会引入FtpWebRequest命令,因为机器解析可能不是预期的(1980年代早期)。

为了解决这个问题,稍后会引入LIST命令。此命令的列表格式由RFC 3659定义。 official example

MLSD

不幸的是,.NET框架不支持Type=cdir;Modify=19981107085215;Perm=el; tmp Type=cdir;Modify=19981107085215;Perm=el; /tmp Type=pdir;Modify=19990112030508;Perm=el; .. Type=file;Size=25730;Modify=19940728095854;Perm=; capmux.tar.z Type=file;Size=1830;Modify=19940916055648;Perm=r; hatch.c Type=file;Size=25624;Modify=19951003165342;Perm=r; MacIP-02.txt Type=file;Size=2154;Modify=19950501105033;Perm=r; uar.netbsd.patch Type=file;Size=54757;Modify=19951105101754;Perm=r; iptnnladev.1.0.sit.hqx Type=file;Size=226546;Modify=19970515023901;Perm=r; melbcs.tif Type=file;Size=12927;Modify=19961025135602;Perm=r; tardis.1.6.sit.hqx Type=file;Size=17867;Modify=19961025135602;Perm=r; timelord.1.4.sit.hqx Type=file;Size=224907;Modify=19980615100045;Perm=r; uar.1.2.3.sit.hqx Type=file;Size=1024990;Modify=19980130010322;Perm=r; cap60.pl198.tar.gz 命令。

您必须使用第三方FTP客户端库/程序集才能利用标准化的MLSD命令。

另见