fs-maybe-open
Open a file unless already an fd
Last updated 9 years ago by vweevers .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install fs-maybe-open 
SYNC missed versions from official npm registry.

fs-maybe-open

Open a file unless it's already a file descriptor.

npm status node Travis build status AppVeyor build status Dependency status

usage

const maybeOpen = require('fs-maybe-open')
    , fs = require('fs')

function readExactly(fdOrFile, pos, length, done) {
  maybeOpen(fdOrFile, 'r', function (err, fd, maybeClose) {
    if (err) return done(err)

    fs.read(fd, Buffer(length), 0, length, pos, function (err, bytesRead, buf) {
      if (err) return maybeClose(done, err)

      if (bytesRead !== length) {
        return maybeClose(done, new Error('End of file'))
      }

      maybeClose(done, null, buf)
    })
  })
}

The maybeOpen function has the same signature as fs.open(path, flags[, mode], callback). Except:

  • If path is a file descriptor, opening is a noop
  • The open callback also receives a maybeClose(callback, err, ...args) function, which calls fs.close for you if path was a filename. An error from fs.close (if any) will be combined with your error (if any).

install

With npm do:

npm install fs-maybe-open

license

MIT © Vincent Weevers

Current Tags

  • 1.0.0                                ...           latest (9 years ago)

1 Versions

  • 1.0.0                                ...           9 years ago
Maintainers (1)
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 1
Dependencies (1)
Dev Dependencies (1)
Dependents (1)

Copyright 2013 - present © cnpmjs.org | Home |