1

ftpパスがftp://10.23.XX.XX/INあり、そのINフォルダー内に、、などのフォルダーがさらに10個ありますES。C USUKでは、フォルダー名のみを読み取り、内部のファイルは読み取りません。その方法を教えていただけますか?

また、私はもっと多くのサイトを使用して、行くように言われました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()){}
4

1 に答える 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
    }
 }
于 2012-09-19T10:19:16.970 に答える