我有ftp路径ftp:\ 10.23.XX.XX \ IN和里面的“IN”文件夹我还有十个文件夹,它们是ES,US,UK等在C#中我想只读取文件夹名称和不是里面的文件。你能告诉我怎么做吗?我也使用了更多的网站,它告诉我去GetResponseStream,但我无法找到正确的代码来获取getdiretries.Immediate重播将非常有帮助。谢谢。
我试图使用的代码如下,
FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://10.23.xx.xx/IN"); request.Credentials = new NetworkCredential("ABC", "ABC"); //request.Method = WebRequestMethods.Ftp.PrintWorkingDirectory.All; // request.Method = WebRequestMethods.Ftp.ListDirectory; request.Proxy = null ; using (FtpWebResponse response = (FtpWebResponse)request.GetResponse()) { }
答案 0 :(得分: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
}
}