FTPサーバーに接続してファイルをアップロードする (WebClient利用) - C#

FTPサーバに接続して、ファイルをアップロードします。FTPでファイルをアップロードする場合には、WebClientクラスが利用できます。

以下はFTPユーザー名"penguin" パスワード"password"で FTPサーバー "ftp.ipentec.com"に接続し、pubディレクトリに"Magic.mp3"という名前で"d:\data\"ディレクトリにある"Magic.mp3"をアップロードします。
    private void button1_Click(object sender, EventArgs e)
    {
      WebClient wc = new WebClient();
      wc.Credentials = new NetworkCredential("penguin", "password");
      wc.UploadFile("ftp://ftp.ipentec.com/pub/Magic.mp3","d:\data\Magic.mp3");
    }

テキストボックス等を利用した、より実用的なコードは以下になります。ボタンをクリックするとファイルを開くダイアログが表示され、選択したファイルをサーバーにアップロードします。
    private void button1_Click(object sender, EventArgs e)
    {
      if (openFileDialog1.ShowDialog() == DialogResult.OK) {
        WebClient wc = new WebClient();
        wc.Credentials = new NetworkCredential(textBox_FTPUser.Text, textBox_FTPPass.Text);
        wc.UploadFile(textBox_FTPPath.Text + Path.GetFileName(openFileDialog1.FileName),
          openFileDialog1.FileName);
      }
    }

著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
最終更新日: 2024-01-06
作成日: 2010-01-25
iPentec all rights reserverd.