■38121 / inTopicNo.1) |
ファイルFtpアップロードするには? |
□投稿者/ XYZ (13回)-(2009/07/07(Tue) 11:35:25)
|
分類:[.NET 全般]
JpegファイルをFtpアップしようとして、落ちてしまいます。 原因は何故かまったくわかりません。
using System; using System.Collections.Generic; using System.Text; using System.Net; using System.IO; using System.Windows.Forms;
namespace SalonFirst { class FtpWebPut { private const string userName = "anonymous"; private const string myPassWord = "who@example.com"; private const string UpLoadDirectory = "ftp://192.168.1.241/testSalon/testTenpo/image/";
/// <summary> /// ファイル転送 /// </summary> /// <param name="_filePath">送信するファイルのパス</param> /// <param name="_fileName">保存する画像名</param> public bool UpLoad(string _filePath,string _fileName) { try { Uri uri = new Uri(UpLoadDirectory + _fileName); string myFile = _filePath;
FtpWebRequest req = (System.Net.FtpWebRequest)WebRequest.Create(uri); req.Credentials = new NetworkCredential(userName, myPassWord); req.Method = WebRequestMethods.Ftp.UploadFile; //PASVモードを無効にする req.UsePassive = false; //要求の完了後に接続を閉じる req.KeepAlive = true; using (FileStream fs = new FileStream(myFile, FileMode.Open)) {
//ファイルをアップロードするためのStreamを取得 Stream st = req.GetRequestStream(); ← ここで落ちてしまう Byte[] buf = new Byte[1024]; int count = 0;
do { count = fs.Read(buf, 0, buf.Length); st.Write(buf, 0, count); } while (count != 0); fs.Close(); st.Close(); } return true;
} catch (WebException we) { FtpWebResponse res = (FtpWebResponse)we.Response; MessageBox.Show("ファイルのアップロードが失敗しました。" + res.StatusDescription); return false; } catch (Exception ex) { MessageBox.Show("ファイルのアップロードが失敗しました。" + ex); return false; }
}
} }
どう直せばちゃんと動くのか、考えても分からないので、投稿させていただきました。どうか、お教え願えませんでしょうか。
|
|