我们可以从SFTP文件夹位置读取csv文件而无需在本地的任何位置下载吗? 我可以使用FTP任务组件但它会在本地下载文件,我想从sftp本身读取文件。 可能吗?我正在使用SSIS 2008.
谢谢,
切塔尼亚
答案 0 :(得分:0)
通常,FTP不允许直接从远程ftp服务器读取文件而不将其下载到本地文件夹。您必须将此文件下载/复制到本地文件夹以进行进一步处理。
您可以在处理后删除本地下载的文件。
但我想知道为什么你决定直接阅读它?任何具体原因。
还有另一种使用脚本任务的方法。在{ssis脚本编辑器中you need to write code to download the file into filestream using FTPWebRequest class.。
FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://www.contoso.com/test.htm");
request.Method = WebRequestMethods.Ftp.DownloadFile;
// This example assumes the FTP site uses anonymous logon.
request.Credentials = new NetworkCredential ("anonymous","janeDoe@contoso.com");
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
Stream responseStream = response.GetResponseStream();
StreamReader reader = new StreamReader(responseStream);
Console.WriteLine(reader.ReadToEnd());
Console.WriteLine("Download Complete, status {0}", response.StatusDescription);
reader.Close();
response.Close();