簡體   English   中英

通過FTP C#將txt文件上傳到服務器上的文件夾

[英]Uploading txt file to folder located on server via FTP c#

我用谷歌搜索了一下,碰到了很多教程,這很好,但是卻出現了一個小錯誤“遠程服務器返回了一個錯誤:(550)文件不可用(例如,找不到文件,無法訪問)。”

這是我的代碼

  try { // Get the object used to communicate with the server. FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://" + "XXX.XXX.XX.XXX/array1/Despatch"); request.Method = WebRequestMethods.Ftp.UploadFile; // This example assumes the FTP site uses anonymous logon. request.Credentials = new NetworkCredential("UserName", "Password"); // Copy the contents of the file to the request stream. StreamReader sourceStream = new StreamReader(Server.MapPath(System.Configuration.ConfigurationManager.AppSettings["DespatchExpressData"])); byte[] fileContents = Encoding.UTF8.GetBytes(sourceStream.ReadToEnd()); sourceStream.Close(); request.ContentLength = fileContents.Length; Stream requestStream = request.GetRequestStream(); requestStream.Write(fileContents, 0, fileContents.Length); requestStream.Close(); FtpWebResponse response = (FtpWebResponse)request.GetResponse(); Console.WriteLine("Upload File Complete, status {0}", response.StatusDescription); response.Close(); } catch (WebException e) { String status = ((FtpWebResponse)e.Response).StatusDescription; } 

在調用上述方法之前,將創建一個文本文件並將其保存在我的項目名為DispatchDetails的解決方案中的文件夾中,該文本文件稱為Data.txt im,使用StreamReader獲取該txt文件,然后嘗試將其上傳到FTP上的文件夾中帳戶

iv甚至嘗試對streamreader部分進行硬編碼,但仍然收到錯誤:(

它落在這條線上

 Stream requestStream = request.GetRequestStream(); 

任何幫助將不勝感激!

謝謝。

在這里看看

可能您必須為WebRequest.Create設置正確的URI,例如

WebRequest.Create("ftp://" + "XXX.XXX.XX.XXX//array1/Despatch");

並且,當然,請檢查您是否具有寫權限:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM