SFTP使用ssis 2008读取csv文件

时间:2013-06-26 03:31:58

标签: ssis

我们可以从SFTP文件夹位置读取csv文件而无需在本地的任何位置下载吗?  我可以使用FTP任务组件但它会在本地下载文件,我想从sftp本身读取文件。 可能吗?我正在使用SSIS 2008.

谢谢,
切塔尼亚

1 个答案:

答案 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();