我们可以从 SFTP 文件夹位置读取 csv 文件而不在本地任何地方下载它吗?我可以使用 FTP 任务组件,但它会在本地下载文件,我想从 sftp 本身读取文件。可能吗?我正在使用 SSIS 2008。
谢谢,
柴坦亚
我们可以从 SFTP 文件夹位置读取 csv 文件而不在本地任何地方下载它吗?我可以使用 FTP 任务组件,但它会在本地下载文件,我想从 sftp 本身读取文件。可能吗?我正在使用 SSIS 2008。
谢谢,
柴坦亚
一般来说,FTP 不允许直接从远程 ftp 服务器读取文件而不将其下载到本地文件夹。您必须将此文件下载/复制到本地文件夹以进行进一步处理。
您可以在处理后删除这个本地下载的文件。
但我想知道你为什么决定直接阅读它?任何具体原因。
还有另一种使用脚本任务的方法。您需要编写代码以使用 FTPWebRequest 类将文件下载到文件流中。在 ssis 脚本编辑器中。
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();