1

ftp パスの場合、ftp://ftp.something.com/次のコードですべてのディレクトリを一覧表示できるとします。

WebRequest req = WebRequest.Create(url) as WebRequest;
        req.Method = WebRequestMethods.Ftp.ListDirectory;

//code to get response from ftp site and list all files and directories path in a list name name_list.

リスト name_list からの foreach パス。path がディレクトリの場合、そのパスをリスト名 sub_list に追加します) 次に、そのパスを別のリスト名 final_list に追加します。これまでのところ、私ができることは次のとおりです。

foreach(string url in name_list)
{
 if (Regex.IsMatch(url, ".*?" + @"(\.[A-Za-z]{2,4}$)"))
         //add to sub_list
else
        //add to final_list
}

しかし、これは私の目標を達成するための信頼できる堅牢な方法ではありません。これに他に最善の方法はありますか?

4

2 に答える 2

0

System.IO.Path クラスを使用して、それがパスかファイルかを判断します。具体的には: http://msdn.microsoft.com/en-us/library/system.io.path.getfilename.aspx

于 2012-07-19T11:05:11.923 に答える
0

ファイルのアクセス許可を調べて、それがディレクトリかどうかを確認できます。次の例を参照してください。

http://www.copyandwaste.com/posts/view/parsing-webrequestmethodsftplistdirectorydetails-and-listdirectory/

于 2012-07-19T11:41:36.780 に答える