xml - windows上通过node.js加载xml文件

标签 xml windows node.js

我正在尝试通过 IIS 中托管的 Node.js 加载和解析本地 XML 文件。 我使用 fs readFile 读取字符串和 xmldom模块来解析它。 它可以工作,直到文件大小很小(几 kb),但如果我尝试加载 3Mb xml,它就会失败。

还有哪个 Windows 的 xml 模块性能更好?

这是我的代码

var fs = require('fs');
fs.readFile('C:\\Temp\\TEST.xml', 'ascii', function(err,data){
    if(err) {
        console.log("Could not open file"+ err);
        process.exit(1);
    }
    var Dom = require('xmldom').DOMParser;
    var doc = new Dom().parseFromString(data.substring(2,data.lenght));
    console.log(doc.childNodes[0].localName);
});

5 分钟后,xml 解析器仍在运行,而在一个更简单的示例中它可以工作。我以 xml 格式保存了 msinfo32 的输出

10 分钟后输出为 RangeError:超出最大调用堆栈大小

输出是从“msinfo32/nfo C:\TEMP\TEST.NFO”生成的

最佳答案

只需确保此处的 xml 文档有效即可:

http://www.w3schools.com/xml/xml_validator.asp

如果是并且失败了,我建议在他们的 github 页面上提出问题

您可以在 npm 上搜索其他模块

我个人使用过xml2js没有问题

关于xml - windows上通过node.js加载xml文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10580039/

相关文章:

node.js - 无法窥探原始值;在 nestJS 中给出未定义

node.js - 如何获取目录中文件的总大小?

node.js - 如何解析从Pub/sub触发的Cloud Function中的Json负载

python - python编码检测库

windows - MapViewOfFile 返回什么?

php - strtotime PHP,显示日期/时间

c# - 确定 Windows 计算机何时完全启动并开始响应

windows - 使用 Perl 从 SID 获取帐户名

java - 如何将图像标题添加到我的抽屉导航布局中

java - 将 Map 转换为内联元素、文本 XML