对于ftp路径说ftp://ftp.something.com/
我可以使用以下代码列出所有目录:
WebRequest req = WebRequest.Create(url) as WebRequest;
req.Method = WebRequestMethods.Ftp.ListDirectory;
//code to get response from ftp site and list all files and directories path in a list name name_list.
现在从列表name_list预先路径,如果path是一个目录,那么我在列表名称sub_list中添加该路径,如果它是某个文件的路径(.txt,.pdf,.rar,.html,.tw和更多扩展)然后在另一个列表名称final_list中添加该路径。 到目前为止,我能做的是:
foreach(string url in name_list)
{
if (Regex.IsMatch(url, ".*?" + @"(\.[A-Za-z]{2,4}$)"))
//add to sub_list
else
//add to final_list
}
但这不是实现我的目标的可靠而有力的方法。 还有其他最好的办法吗?
答案 0 :(得分:0)
我会使用System.IO.Path类来确定它是路径还是文件。特别: http://msdn.microsoft.com/en-us/library/system.io.path.getfilename.aspx
答案 1 :(得分:0)
您可以查看文件权限以查看它是否是目录。请参阅以下示例: