我有以下代码来执行 FTP 文件:
private bool InitFTPTransfer(string filePath)
{
Uri ipAddress = new Uri(ddcdao.ddcAddress);
string ftpAddress = "ftp://10.175.95.11/mnt/flash" +Path.GetFileName(filePath);
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(ftpAddress);
request.Method = WebRequestMethods.Ftp.UploadFile;
request.Credentials = new NetworkCredential(Properties.Settings.Default.SysFTPID, Properties.Settings.Default.SysFTPPassword);
byte[] fileContents = File.ReadAllBytes(filePath);
request.ContentLength = fileContents.Length;
Stream requestStream = request.GetRequestStream();
requestStream.Write(fileContents, 0, fileContents.Length);
requestStream.Close();
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
response.Close();
return true;
}
文件传输没有问题,但文件放在根目录下,而不是指定目录(/mnt/flash)。
我的印象是在 ftp 地址中指定目录应该正确设置目标,但这对于嵌入式 linux 可能并非如此。
我该如何解决这个问题?