[ad_1]
だから私はこのftpアップロード、ローカルからftpフォルダーへのファイルのアップロードを持っていますが、私の問題は、アップロードされたファイルを表示するにはFTPフォルダーを更新する必要があることです。
助けてください。
私が試したこと:
using System.Net; using System.IO; //Create FTP request FtpWebRequest request = (FtpWebRequest)FtpWebRequest.Create(ftpAdd + "/" + Path.GetFileName(filePath)); request.Method = WebRequestMethods.Ftp.UploadFile; request.Credentials = new NetworkCredential(username, password); request.UsePassive = true; request.UseBinary = true; request.KeepAlive = true; //Load the file FileStream stream = File.OpenRead(filePath); byte[] buffer = new byte[stream.Length]; stream.Read(buffer, 0, buffer.Length); stream.Close(); //Upload file Stream reqStream = request.GetRequestStream(); reqStream.Write(buffer, 0, buffer.Length); reqStream.Close(); request = null; MessageBox.Show("Uploaded Successfully");
解決策 1
FileZilla を使用すると、次のことが可能になります。 Filezilla: FTP フォルダを自動的に更新する方法[^]
解決策 2
public static void Upload(文字列 f)
{
文字列 ftpserverIP = System.Configuration.ConfigurationManager.AppSettings[“ftpserverIP”];
文字列ユーザー名 = System.Configuration.ConfigurationManager.AppSettings[“username”];
文字列パスワード = System.Configuration.ConfigurationManager.AppSettings[“password”];
文字列 portno = System.Configuration.ConfigurationManager.AppSettings[“portno”];
文字列 FromLocalFile = System.Configuration.ConfigurationManager.AppSettings[“FromLocalFile”].ToString();
文字列 ToServerFile = Convert.ToString(System.Configuration.ConfigurationManager.AppSettings[“ToServerFile”].ToString();
文字列 RemoteDir = System.Configuration.ConfigurationManager.AppSettings[“RemoteDir”].ToString();
試す
{
文字列 uri = ftpserverIP + ToServerFile + “https://www.codeproject.com/”;
URI serverUri = 新しい Uri(s);
if (serverUri.Scheme != Uri.UriSchemeFtp)
{
}
string file1 = string.Format(f);
string path1 = Path.Combine(RemoteDir, DateTime.Now.ToString(“ddd MM.dd.yyyy”), Path.GetFileName(file1));
// CreateRemoteDir() メソッドを呼び出します。
Program.CreateRemoteDir();
FtpWebRequest リクエスト = (FtpWebRequest)WebRequest.Create(ftpserverIP + “https://www.codeproject.com/” + path1);
request.Method = WebRequestMethods.Ftp.UploadFile;
request.Credentials = 新しい NetworkCredential(ユーザー名、パスワード);
request.KeepAlive = true;
request.UseBinary = true;
// ファイルの内容をリクエスト ストリームにコピーします。
StreamReader sourceStream = 新しい StreamReader(file1);
バイト[] fileContents = Encoding.UTF8.GetBytes(sourceStream.ReadToEnd());
sourceStream.Close();
request.ContentLength = fileContents.Length;
ストリーム requestStream = request.GetRequestStream();
requestStream.Write(fileContents, 0, fileContents.Length);
requestStream.Close();
}
キャッチ (WebException wEx)
{
Console.WriteLine(wEx.Message, “アップロード エラー”);
}
キャッチ(例外例)
{
Console.WriteLine(ex.Message, “アップロードエラー”);
}
}
[ad_2]
コメント