Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Socket
Sign inDemoInstall

n-readlines

Package Overview
Dependencies
Maintainers
1
Versions
13
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

n-readlines

Read file line by line without buffering the whole file in memory.


Version published
Weekly downloads
61K
increased by11.9%
Maintainers
1
Weekly downloads
 
Created
Source

Build Status

node-readlines

Reading file line by line may seem like a trivial problem, but in node, there is no straightforward way to do it. There are a lot of libraries using Transform Streams to achieve it, but it seems like a overkill, so I've wrote simple version using only the filesystem module of node. Note that this is synchronous library.

Install with npm install n-readlines


Documentation

new readlines(filename, [options]);

new readlines(fd, [options]);

Arguments

  • filename - String path to the file you want to read from
  • fd - File descriptor
  • options - Object
    • readChunk - Integer number of bytes to read at once. Default: 1024
    • newLineCharacter - String new line character, only works with one byte characters for now. Default: \n which is 0x0a hex encoded

node-readlines can handle files without newLineCharacter after the last line


readlines.next()

Returns buffer with the line data without the newLineCharacter or false if end of file is reached.


readlines.reset()

Resets the pointer and starts from the beginning of the file. This works only if the end is not reached.


readlines.close()

Manually close the open file, subsequent next() calls will return false. This works only if the end is not reached.


Example

const lineByLine = require('./readlines.js');
const liner = new lineByLine('./test/fixtures/normalFile.txt');

let line;
let lineNumber = 0;

while (line = liner.next()) {
        console.log('Line ' + lineNumber + ': ' + line.toString('ascii'));
            lineNumber++;
}

console.log('end of line reached');

Keywords

FAQs

Package last updated on 11 May 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc