ListDirectoryDe​​tails

时间:2018-05-11 11:44:13

标签: c#

我正在尝试将所有文​​件放在ftp目录中但是我遇到的问题是它没有带回所有文件。但是第一个文件因为某些奇怪的原因没有得到文件名,所以我的程序会跳过它。

public static string[] GetFilesInDirectory(string requestUriString, string username, string password)
    {
        var lines = new List<string>();

        try
        {
            // Get the object used to communicate with the server.
            var request = (FtpWebRequest) WebRequest.Create(requestUriString);
            request.Credentials = new NetworkCredential(username, password);                
            request.Method = WebRequestMethods.Ftp.ListDirectoryDetails;
            request.UsePassive = true;

            using (WebResponse response = (FtpWebResponse) request.GetResponse())
            {
                using (Stream responseStream = response.GetResponseStream())
                {
                    if (responseStream != null)
                    {
                        using (var reader = new StreamReader(responseStream))
                        {
                            string line;

                            while ((line = reader.ReadLine()) != null)
                            {
                                try
                                {
                                    lines.Add(line);
                                }
                                catch (Exception ex)
                                {
                                    MessageBox.Show(ex.Message);
                                }
                            }
                        }
                    }
                }
            }
        }
        catch (Exception ex)
        {
            throw new Exception("An error occured connecting to the website.", ex);
        }

        return lines.ToArray();
 }

当我查看你在这里看到的文件时,前两个文件中缺少名称。

您将看到文件名丢失,计数正确,但不知道文件名为空的原因。

抱歉有十三个文件,所以它甚至可以获得额外的两个数组条目。   enter image description here

以下是服务器上的文件,因为你看到有13个文件。

这是我的文件数组。

enter image description here

1 个答案:

答案 0 :(得分:2)

他们并没有失踪,你只是没有仔细观察。单点.表示当前目录,双点..表示父目录。

https://superuser.com/a/37451/255404