资讯专栏INFORMATION COLUMN

NPM酷库052:sax,按流解析XML

pinecone / 575人阅读

摘要:酷库,每天两分钟,了解一个流行库。在酷库中,我们学习了如何使用库将格式文档字符串解析为的对象数据,本期,我们继续学习,一个可以以流编程的方式解析。

NPM酷库,每天两分钟,了解一个流行NPM库。·

在NPM酷库051中,我们学习了如何使用xml2js库将XML格式文档字符串解析为JavaScript的对象数据,本期,我们继续学习sax,一个可以以流编程的方式解析XML。

使用流编程的方式,并没有直接将XML解析为JSON便捷,但是可以节省内存开销,同时在某些应用领域只能使用流的方式,比如远程XML事件流接口等情况。

sax

sax的使用方式如下:

const fs = require("fs");
const sax = require("sax");

fs.writeFileSync("file.xml","Hello, world!");

let saxStream = sax.createStream();

saxStream.on("opentag", function (node) {
    console.log("opentag",node);
});

fs.createReadStream("file.xml")
  .pipe(saxStream)
  .pipe(fs.createWriteStream("file-copy.xml"));

sax的流对象不但支持data等事件以及pipe 管道,另外还提供了 opentagtextdoctypeopentagstartclosetagattributecommentopencdatacdataclosecdataopennamespaceclosenamespace等事件。

sax除了可以解析XML之外,也可以用来解析HTML文档。

参考资料

https://github.com/isaacs/sax-js

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/107561.html

相关文章

  • NPM酷库052sax按流解析XML

    摘要:酷库,每天两分钟,了解一个流行库。在酷库中,我们学习了如何使用库将格式文档字符串解析为的对象数据,本期,我们继续学习,一个可以以流编程的方式解析。 NPM酷库,每天两分钟,了解一个流行NPM库。· 在NPM酷库051中,我们学习了如何使用xml2js库将XML格式文档字符串解析为JavaScript的对象数据,本期,我们继续学习sax,一个可以以流编程的方式解析XML。 使用流编程的方...

    zhangke3016 评论0 收藏0
  • NPM酷库051:xml2js,解析XML格式数据

    摘要:酷库,每天两分钟,了解一个流行库。在酷库中,我们介绍了使用创建格式文档,今天我们来学习如何解析文档数据。此外,也支持生成。得到的格式文档数据为使用库提供的对象,可以方便地将数据直接转成格式,相对于库更加方便使用。 NPM酷库,每天两分钟,了解一个流行NPM库。· 在NPM酷库050中,我们介绍了使用xmlbuilder创建XML格式文档,今天我们来学习如何解析XML文档数据。 xml2...

    lei___ 评论0 收藏0
  • NPM酷库051:xml2js,解析XML格式数据

    摘要:酷库,每天两分钟,了解一个流行库。在酷库中,我们介绍了使用创建格式文档,今天我们来学习如何解析文档数据。此外,也支持生成。得到的格式文档数据为使用库提供的对象,可以方便地将数据直接转成格式,相对于库更加方便使用。 NPM酷库,每天两分钟,了解一个流行NPM库。· 在NPM酷库050中,我们介绍了使用xmlbuilder创建XML格式文档,今天我们来学习如何解析XML文档数据。 xml2...

    张金宝 评论0 收藏0
  • NPM酷库050:xmlbuilder,创建XML文件

    摘要:酷库,每天两分钟,了解一个流行库。在前几期酷库中,我们介绍了操作等数据格式文件,在外部系统接口中,我们还会经常遇到格式的接口协议。本期,我们先来了解,用来创建格式文档。 NPM酷库,每天两分钟,了解一个流行NPM库。· 在前几期NPM酷库中,我们介绍了Node.js操作JSON5、YAML、CSON、CSV等数据格式文件,在外部系统接口中,我们还会经常遇到XML格式的接口协议。从本期开...

    baukh789 评论0 收藏0
  • NPM酷库050:xmlbuilder,创建XML文件

    摘要:酷库,每天两分钟,了解一个流行库。在前几期酷库中,我们介绍了操作等数据格式文件,在外部系统接口中,我们还会经常遇到格式的接口协议。本期,我们先来了解,用来创建格式文档。 NPM酷库,每天两分钟,了解一个流行NPM库。· 在前几期NPM酷库中,我们介绍了Node.js操作JSON5、YAML、CSON、CSV等数据格式文件,在外部系统接口中,我们还会经常遇到XML格式的接口协议。从本期开...

    taoszu 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<