Repository URL to install this package:
|
Version:
1.16.0 ▾
|
| .. |
| LICENSE.txt |
| README.md |
| example.js |
| package.json |
| stringstream.js |
var fs = require('fs') var zlib = require('zlib') var strs = require('stringstream') var utf8Stream = fs.createReadStream('massiveLogFile.gz') .pipe(zlib.createGunzip()) .pipe(strs('utf8'))
No need to deal with setEncoding() weirdness, just compose streams
like they were supposed to be!
Handles input and output encoding:
// Stream from utf8 to hex to base64... Why not, ay. var hex64Stream = fs.createReadStream('myFile') .pipe(strs('utf8', 'hex')) .pipe(strs('hex', 'base64'))
Also deals with base64 output correctly by aligning each emitted data
chunk so that there are no dangling = characters:
var stream = fs.createReadStream('myFile').pipe(strs('base64')) var base64Str = '' stream.on('data', function(data) { base64Str += data }) stream.on('end', function() { console.log('My base64 encoded file is: ' + base64Str) // Wouldn't work with setEncoding() console.log('Original file is: ' + new Buffer(base64Str, 'base64')) })