[英]Parsing large XML file in Node.js
所以我有一個大於70mb的XML文件。 我想在Node.js中解析這些數據,最終對它進行數據可視化。 首先,我認為最好使用JSON而不是XML,因為Node.js更適合使用JSON。 所以我打算使用xml2json節點模塊將xml解析為JSON,但我似乎無法將xml文件寫入變量,因為它太大了。 我嘗試使用以下代碼執行此操作。
var fs = require('fs');
fs.readFile(__dirname + '/xml/ipg140114.xml', 'utf8', function(err, data, parseXml) {
if(err) {
return console.log(err);
}
});
我收到堆棧跟蹤錯誤。 什么是將此文件轉換為JSON的更好方法,以便我可以使用Node解析它? 我是Node的新手,所以讓我知道我的方法是否錯誤。 提前致謝!
Json2xml
要求您將整個文件加載到內存中。 您可以分配更多內存,但我建議您直接從文件中解析XML。
NPM上還有其他庫,例如xml-stream
,它允許您直接從文件中解析XML而不將其全部加載到內存中。
我對xml-stream
個人問題是它依賴於GYP
,如果你是一個Windows用戶,這可能會很麻煩。 我向NPM添加了一個名為no-gyp-xml-stream
的非常基本的解析器,這個解析器只依賴於sax。 但它有點簡陋,可能不適合您的需求。
但是,如果有人需要,我願意改進它: https : //www.npmjs.com/package/no-gyp-xml-stream
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.