以下で説明する問題は、Fedora 上の Mono に関するものであることに注意してください。Visual Studio から同じコードをテストしたところ、期待どおりに動作しました。これはMonoのバグですか?
ブラウザにアクセスしftp://10.32.70.50/docs
て、ユーザー名/パスワードを入力すると、 ~username/docs の内容を一覧表示できます
FTP クライアント ソフトウェアはftp://10.32.70.50//
、IP に続く相対パス ( ) に関係なく、ルート ディレクトリ ( ) またはログイン用の最上位ディレクトリを読み取りますftp://10.32.70.50/docs
。
List<string> dirlist = new List<string>();
Uri testuri = new Uri(@"ftp://10.32.70.50:21/doc");
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(testuri);
request.Method = WebRequestMethods.Ftp.ListDirectory;
request.Credentials = new NetworkCredential("username", "password");
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
Stream responseStream = response.GetResponseStream();
StreamReader reader = new StreamReader(responseStream);
while (reader.Peek() >= 0)
{
dirlist.Add((reader.ReadLine()));
}
URI に追加されたパスをコードで使用するにはどうすればよいですか?