title: fileReader: readAsArrayBuffer() vs readAsBinaryString()
body: <p>I'm using reader.readAsArrayBuffer() to send a file to node.js so that i can save it in a /public folder. </p>
  
  <pre><code>reader.readAsArrayBuffer(event.currentTarget.files[0])
  </code></pre>
  
  <p>When the read is done it calls a Meteor.method()</p>
  
  <pre><code>            reader.addEventListener("loadend", function(evt){
  
                  Meteor.call("saveFile", reader.result)
  
              })
  </code></pre>
  
  <p>The meteor method receives a file and saves it to my public/folder. </p>
  
  <pre><code>      saveFile:function(file){
  
              var fs = Npm.require("fs")
  
              fs.writeFile('../../../../../public/logo/jow.png', file, {encoding:"binary"}, function (err) {
  
                  console.log(err)
                  console.log("file saved")
  
              });
  
          }
  </code></pre>
  
  <p>However, the problem is that i never get the encoding right, and when opening the file in /public/logo/jow.png i get this message:</p>
  
  <pre><code>jow.png can not be read, it may be damaged.
  </code></pre>
  
  <p>But when i change readAsArrayBuffer() to readAsBinaryString() it works as expected and i can open the image.</p>
  
  <p>Any ideas?</p>