<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
  <CodeSnippet Format="1.0.0">
    <Header>
      <Title>Download file via FtpWebRequest</Title>
      <Shortcut>DownloadfileviaFtpWebRequest</Shortcut>
      <Description>Download file via FtpWebRequest [C#]</Description>
      <Author>Detlef Grohs</Author>
      <HelpUrl>/PreviewSnippet.aspx?SnippetID=ac353e4d-2eef-459b-867f-3f4388fc3811</HelpUrl>
      <SnippetTypes>
        <SnippetType>SurroundsWith</SnippetType>
      </SnippetTypes>
    </Header>
    <Snippet>
      <Code Language="csharp"><![CDATA[            FtpWebRequest request = (FtpWebRequest)FtpWebRequest.Create(@"ftp://ftp.somesite.com/somefile.txt");
            request.Credentials = new NetworkCredential(@"ftp_user", @"ftp_password");
            request.Method = WebRequestMethods.Ftp.DownloadFile;

            using (FtpWebResponse response = (FtpWebResponse)request.GetResponse())
            {
                using (StreamReader in_stream = new StreamReader(response.GetResponseStream()))
                {
                    using (StreamWriter out_stream = new StreamWriter(@"C:\localfile.txt", false))
                    {
                        char[] buffer = new char[1024];
                        while (!in_stream.EndOfStream)
                        {
                            int bytes_read = in_stream.Read(buffer, 0, buffer.Length);
                            out_stream.Write(buffer, 0, bytes_read);
                        }
                    }
                }
            }]]></Code>
    </Snippet>
  </CodeSnippet>
</CodeSnippets>