1.0.0 • Published 8 years ago

big-xml v1.0.0

Weekly downloads
484
License
-
Repository
github
Last release
8 years ago

big-xml -- Lightweight XML parser for really big files

A record-by-record XML reader, for node.js, based on node-expat.

Designed for big XML files (1GB+), and low memory usage.

Install

npm install big-xml

or from source:

git clone git://github.com/jahewson/node-big-xml.git
cd node-big-xml
npm link

#Example

XML files are streamed, and parsed one record at a time, which keeps memory usage low.

You must specify which XML elements should be considered as the root of a record, using a regex. In this example the elements Foo and Bar will be emitted as records.

var bigXml = require('big-xml');
    
var reader = bigXml.createReader('data.xml.gz', /^(Foo|Bar)$/, { gzip: true });

reader.on('record', function(record) {
  console.log(record);
});

The output would take the form:

{ tag: 'Foo',
  attrs: { Name: 'John', Status: 'Student' },
  children: [
    { tag: 'Color', text: 'blue'} 
  ]
}

And if you want to handle errors (by default they are thrown):

reader.on('error', function(err) {
  console.log(err);
});
1.0.0

8 years ago

0.7.1

8 years ago

0.7.0

11 years ago

0.6.0

12 years ago

0.5.0

12 years ago