FTP子文件夹列表

问题描述 投票:1回答:1

我有一个ftp路径ftp://10.23.XX.XX/IN,在IN文件夹中,我还有十个文件夹,分别是ESUSUK等。在C#中,我只想读取文件夹名称,而不是里面的文件。你能让我知道怎么做吗?

而且,我已经使用了更多站点,它告诉我要使用GetResponseStream,但我找不到正确的代码来获取目录。

我尝试使用的代码如下:

FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://10.23.xx.xx/IN");
         request.Credentials = new NetworkCredential("ABC", "ABC");
         //request.Method = WebRequestMethods.Ftp.PrintWorkingDirectory.All<request.>;
         // request.Method = WebRequestMethods.Ftp.ListDirectory;
         request.Proxy = null ;
         using (FtpWebResponse response = (FtpWebResponse)request.GetResponse()){}
c# ftp
1个回答
0
投票

[如果您想以以前的方式使用它:

    request.Method = WebRequestMethods.Ftp.ListDirectoryDetails;
    FtpWebResponse response = request.GetResponse() as FtpWebResponse;
    Stream responseStream = response.GetResponseStream();
    StreamReader reader = new StreamReader(responseStream);
    while ((sSource = reader.ReadLine()) != null)
            {something}

但是我强烈建议您使用edtFTPnet.dll之类的第三方库,在其中您将按照您的需要做简单的事情:

FTPFile[] elementy = ftpConnection1.GetFileInfos();
foreach (FTPFile elem in elementy)
{
  if (elem.Dir)//true if item is Directory
   {
//something
    }
 }
© www.soinside.com 2019 - 2024. All rights reserved.