先ほどのPythonでFTPサーバを作ってみた件について一緒に書いていたクライアントの部分をC#で書き直してみた。
この程度の実装ならC#の方が簡単。
ただし,WebClientを使用するところが非常に特徴的である。
ちなみに,2つファイルを作ってしまっているが,一つ目はファイルを転送したもの,二つ目はメモリからバイト列をファイルへ転送したもの。
using System.Text;
namespace FTP
{
class Program
{
static void Main(string[] args)
{
System.Net.WebClient client = new System.Net.WebClient();
client.Credentials = new System.Net.NetworkCredential("user", "password");
// ファイルを転送する場合。
client.UploadFile("ftp://localhost/test4.txt", "test2.txt");
// メモリから直接文字列を転送する場合。
string str = "これはテストの文字列です";
byte[] bytes = Encoding.UTF8.GetBytes(str);
client.UploadData("ftp://localhost/test5.txt", bytes);
client.Dispose();
}
}
}
当然Syste.Net.WebClientを使用しているのでftpに限らずhttpの利用も想定できると思うが…

