Sometimes, asynchronous operations can be a burden. Especially when you're writing small console utilities like to batch process files.
There are many asynchronous ways to copy a file. Here is a synchronous version (CoffeeScript):
copyFileSync = (srcFile, destFile) ->
BUF_LENGTH = 64*1024
buff = new Buffer(BUF_LENGTH)
fdr = fs.openSync(srcFile, 'r')
fdw = fs.openSync(destFile, 'w')
bytesRead = 1
pos = 0
while bytesRead > 0
bytesRead = fs.readSync(fdr, buff, 0, BUF_LENGTH, pos)
fs.writeSync(fdw,buff,0,bytesRead)
pos += bytesRead
fs.closeSync(fdr)
fs.closeSync(fdw)
You can view the converted version in JavaScript.
If you made it this far, you should follow me on Twitter.
-JP
Want to test-drive Bitcoin without any risk? Check out my bitcoin wallet Coinbolt. It includes test coins for free.
comments powered by Disqus