title: Downloading image via libcurl
body: <p>I try to download image via libcurl (I know other options to download, but I need to get it done via libcurl)</p>
  
  <p>When I download &amp; save the image, I can not open it.
  The file size is different as when downloading file myself.</p>
  
  <pre><code>using System;
  using System.Windows.Forms;
  using SeasideResearch.LibCurlNet;
  using System.IO;
  
  namespace WindowsFormsApplication1
  {
      public partial class Form1 : Form
      {
          public Form1()
          {
              InitializeComponent();
          }
  
  
          private void button1_Click(object sender, EventArgs e)
          {
              HTTP cURL = new HTTP();
              cURL.CurlInit();
  
              // Getting Data - Downloading the picture
              String data = cURL.HTTPGet("http://www.hcs.harvard.edu/csharp/Logo1.png");
  
              // Saving Picture
              HTTP.save_file("bilde2.jpg", data);
          }
      }
  
      class HTTP
      {
          public Easy easy;
          public string SockBuff;
  
          public void CurlInit()
          {
              Curl.GlobalInit((int)CURLinitFlag.CURL_GLOBAL_ALL);
          }
  
          public string HTTPGet(string URL)
          {
              easy = new Easy();
  
              Easy.WriteFunction wf = new Easy.WriteFunction(OnWriteData);
              easy.SetOpt(CURLoption.CURLOPT_URL, URL);
              easy.SetOpt(CURLoption.CURLOPT_WRITEFUNCTION, wf);
              //easy.SetOpt(CURLoption.CURLOPT_WRITEDATA, f);
              easy.Perform();
              return SockBuff;
          }
  
  
          public Int32 OnWriteData(Byte[] buf, Int32 size, Int32 nmemb, Object extraData)
          {
              SockBuff = SockBuff + System.Text.Encoding.UTF8.GetString(buf);
              return size * nmemb;
          }
  
          static public void save_file(string file_name, string text_to_write)
          {
              using (FileStream stream = new FileStream(file_name, FileMode.Create))
              {
                  using (BinaryWriter writer = new BinaryWriter(stream))
                  {
                      //writer.Write("hello");
                      writer.Write(text_to_write);
                      writer.Close();
                  }
              }
          }
  
      }
  }
  </code></pre>
  
  <p>What am I doing wrong here ? </p>