我有PGP文件,我已驗證爲有效,但在FTP上載過程中的某個時刻,它們已損壞。檢索時,我收到一條錯誤消息,指出「在這些文件中找不到PGP信息」。在C#中傳輸FTP期間更改PGP文件
PGP的版本是6.5.8,但我認爲這並不重要,因爲文件在上傳前似乎沒有問題。
我的代碼如下文件傳輸,有沒有我錯過的設置或字段?
static void FTPUpload(string file)
{
FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://ftp.itginc.com" + "/" + Path.GetFileName(file));
request.UseBinary = true;
request.Method = WebRequestMethods.Ftp.UploadFile;
request.Credentials = new NetworkCredential(ApplicationSettings["Username"], ApplicationSettings["Password"]);
StreamReader sr = new StreamReader(file);
byte[] fileContents = Encoding.UTF8.GetBytes(sr.ReadToEnd());
sr.Close();
request.ContentLength = fileContents.Length;
Stream requestStream = request.GetRequestStream();
requestStream.Write(fileContents, 0, fileContents.Length);
requestStream.Close();
FtpWebResponse resp = (FtpWebResponse)request.GetResponse();
Console.WriteLine("Upload file complete, status {0}", resp.StatusDescription);
resp.Close();
string[] filePaths= Directory.GetFiles(tempPath);
foreach (string filePath in filePaths)
File.Delete(filePath);
}
任何幫助表示讚賞
這是否經常發生? – atamanroman
是的 - 它上傳大約100個文件,並且它們都有相同的問題。 – SeanVDH
我認爲PGP編碼的數據爲文本?不應UseBinary設置爲false? – Jason