我正在尝试解析Ftp.ListDirectoryDetails命令的结果,我只想要FileName和最后修改日期Not Directories。
该命令返回:
“01-21-09 06:16 PM rattandom” “01-21-09 08:01 PM 9900 myfile.txt”
有人知道解析它的方法吗?我正在阅读,如果服务器是Windows或Unix,它将返回不同的东西。我粘贴的结果是Windows 2003 Server中的FTP
答案 0 :(得分:4)
FTP列表结果是非标准的,因此每个FTP服务器都可能返回不同的内容。
答案 1 :(得分:1)
有一个建议的常规异常适用于基于Windows和Unix的FTP服务器。请参阅this answer。
答案 2 :(得分:0)
您可能想尝试Ftp.dll FTP component它会使大多数UNIX和Windows LIST命令响应无效:
using (Ftp client = new Ftp())
{
client.Connect("ftp.example.org");
client.Login("user", "password");
List<FtpItem> items = client.GetList();
foreach (FtpItem item in items)
{
Console.WriteLine("Name: {0}", item.Name);
Console.WriteLine("Size: {0}", item.Size);
Console.WriteLine("Modify date: {0}", item.ModifyDate);
Console.WriteLine("Is folder: {0}", item.IsFolder);
Console.WriteLine("Is file: {0}", item.IsFile);
Console.WriteLine("Is symlink: {0}", item.IsSymlink);
Console.WriteLine();
}
client.Close();
}
请注意,这是我创建的商业产品。