我在C#中编写小应用程序,它应该将txt文件上传到Linux服务器。它工作但不把文件放在我想要的位置。而不是/ mvno / myfolder / home / reports所有文件都转到这样的路径:userdirectory / mvno / myfolder / home / reports - 相对于用户登录目录的路径。 在MSDN我看到绝对路径%2f 应该被使用(例如" ftp://contoso.com/%2fpath")但它在这里不起作用。
private void UploadReportFTP(string targetPath, string localPath, string fileName)
{
try
{
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(string.Format("ftp://192.168.100.200/{0}/{1}", targetPath, fileName));
request.Method = WebRequestMethods.Ftp.UploadFile;
request.Credentials = new NetworkCredential(sFTPUsername, sFTPPassword);
using (FileStream fs = File.OpenRead(localPath + fileName))
{
byte[] buffer = new byte[fs.Length];
fs.Read(buffer, 0, buffer.Length);
fs.Close();
Stream requestStream = request.GetRequestStream();
requestStream.Write(buffer, 0, buffer.Length);
requestStream.Flush();
requestStream.Close();
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
有没有解决方案?