使用 Renci ssh 上传到 SFTP 目录
本文关键字:SFTP 目录 Renci ssh 使用 | 更新日期: 2023-09-27 18:34:13
我没有收到错误,但我的文件没有上传。我正在尝试上传到 SFTP 上的目标目录。
public string TryUploads(string targetDirectory)
{
string _localDirectory = LocalDirectory; //The directory in SFTP server where the files are present
if (oSftp == null)
{
oSftp = Instance;
}
lock (thisLock)
{
try
{
oSftp.Connect();
List<string> fileList = Directory.GetFiles(_localDirectory, "*.*").ToList<string>();
oSftp.ChangeDirectory(targetDirectory);
if (fileList != null && fileList.Count() > 1)
{
for (int i = 0; i < fileList.Count(); i++)
{
string ftpFileName = Path.GetFileName(fileList[i]);
if (!String.IsNullOrEmpty(targetDirectory))
ftpFileName = String.Format("{0}/{1}", targetDirectory, ftpFileName);
using (var stream = new FileStream(Path.GetFileName(fileList[i]), FileMode.Create))
{
oSftp.BufferSize = 4 * 1024;
oSftp.UploadFile(stream, ftpFileName);
// stream.Close();
}
}
}
oSftp.Disconnect();
}
catch (Exception e)
{
throw new ApplicationException(e.Message);
}
}
return Strings.StatusOk;
}
我解决了这个问题。我需要将获取文件的位置放在流中
using (var stream = new FileStream(LocalDirectory + "''" + Path.GetFileName(fileList[i]), FileMode.Open))
解决。上传的文件;)