"Fossies" - the Fresh Open Source Software Archive

Member "Atom/resources/app/apm/node_modules/stringstream/README.md" (17 Oct 2016, 1062 Bytes) of archive /windows/misc/atom-windows.zip:

As a special service "Fossies" has tried to format the requested source page into HTML format (assuming markdown format). Alternatively you can here view or download the uninterpreted source code file. A member file download can also be achieved by clicking within a package contents listing on the according byte size field.

Decode streams into strings The Right Way™

```javascript 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:

javascript // 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:

```javascript 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’)) }) ```