-1

サーバー フォルダーからバイナリ ファイルをダウンロードする必要があるシステムを開発しています。ここでは、ダウンロードする前に、それらがローカル フォルダーにあるかどうかを確認します。そのため、* .binファイルのリストを取得する必要があります。

以下のコードを試してみましたが、サーバーフォルダーにあるすべてのファイルのリストを生成します。

    private string[] GetRemoteFileList()
    {
        FtpWebRequest request = (FtpWebRequest)WebRequest.Create(new Uri(_remoteHost));
        request.Credentials = new NetworkCredential(_remoteUser, _remotePass);
        request.Method = WebRequestMethods.Ftp.ListDirectory;

        FtpWebResponse response = (FtpWebResponse)request.GetResponse();
        Stream responseStream = response.GetResponseStream();
        StreamReader reader = new StreamReader(responseStream);

        string FileNames = reader.ReadToEnd();
        string[] Files = Regex.Split(FileNames, "\r\n");
        return Files;
    }

必要なのは、*.bin ファイルのみを除外することです。どうすればこれを達成できますか?

4

1 に答える 1

2

何を試しましたか?

これFilesで、現在のディレクトリにあるすべてのファイルの配列ができました。そのリストをフィルタリングしてみませんか? 例えば:

return Files.Where(
    f => f.EndsWith(".bin", StringComparison.OrdinalIgnoreCase)
                  ).ToList();
于 2012-10-04T10:39:10.460 に答える