仅限目录的FTP列表

时间:2015-11-05 18:41:33

标签: c# ftp

我试图从ftp获取目录列表,但我无法从目录中分离文件。

到目前为止我得到了这个:

public static List<string> getDirs()
{
    System.Net.FtpWebRequest ftpRequest = (System.Net.FtpWebRequest)System.Net.WebRequest.Create(path);
    ftpRequest.Credentials = new System.Net.NetworkCredential(name, pass);
    ftpRequest.Method = WebRequestMethods.Ftp.ListDirectory;
    System.Net.FtpWebResponse response = (System.Net.FtpWebResponse)ftpRequest.GetResponse();
    System.IO.StreamReader streamReader = new System.IO.StreamReader(response.GetResponseStream());

    List<string> directories = new List<string>();
    string line = streamReader.ReadLine();
    while (!string.IsNullOrEmpty(line))
    {
            directories.Add(line);
            line = streamReader.ReadLine();
    }
    streamReader.Close();
    return directories;
}

我的结果如下:

folder1
folder3
file1.txt
File2.dat
folder2

问题是,我永远不知道哪个是目录,哪个是文件。我无法使用正则表达式从列表中删除字符串,其中包含点或类似的东西,因为我只能将文件夹命名为&#34; x.x&#34;

我找到了一种方法,我可以简单地创建具有从列表中获取的确切名称的文件夹。 (如果文件夹存在我得到异常,如果不是我创建文件夹)但这个解决方案对我来说不够好。

有没有合法的方法如何在FTP上只获取目录列表?

0 个答案:

没有答案