title: How do I connect io.Reader and io.Writer?
body: <p>I'm writing a long running task which fetch from mongodb (using mgo) multiple times. Then write it to an xlsx file using <a href="https://godoc.org/github.com/tealeg/xlsx#File.Save" rel="noreferrer">this module</a>. Then read it again using <code>os.Open</code> then store it to my ftp server.</p>
  
  <p><code>Stor</code> function consume my memory so much, So I think there should be a way not to save file but pass my data from xlsx.Write to ftp.Store directly. (If I can stream simultaneously would be perfect because I don't have to hold all of my documents in server's memory before send them to Stor function)</p>
  
  <p>These are prototype of the functions</p>
  
  <p><code>func (f *File) Write(writer io.Writer) (err error)</code> <a href="https://godoc.org/github.com/tealeg/xlsx#File.Write" rel="noreferrer">xlsl</a></p>
  
  <p><code>func (ftp *FTP) Stor(path string, r io.Reader) (err error)</code> <a href="https://godoc.org/github.com/dutchcoders/goftp" rel="noreferrer">ftp</a></p>