【发布时间】:2019-01-01 15:53:20
【问题描述】:
我正在使用带有 KDE 等离子的 Arch Linux 系统。我有大约 50mb 的 XML,我需要解析它。该文件具有自定义标签。
示例 XML:
<JMdict>
<entry>
<ent_seq>1000000</ent_seq>
<r_ele>
<reb>ヽ</reb>
</r_ele>
<sense>
<pos>&unc;</pos>
<gloss g_type="expl">repetition mark in katakana</gloss>
</sense>
</entry>
</JMdict>
我尝试了许多 Stack Overflow 上建议的解决方案,但它们根本不起作用,其中一些无法安装到我的系统中,例如 xml-stream、xml2json。我决定使用xml2js(大多数人建议使用xml2js),得到了相同的结果。我怎样才能正确使用它?
我正在使用此代码,但它总是返回未定义:
const fs = require('fs-extra');
const xml2js = require('xml2js');
const parser = new xml2js.Parser();
const path = "test.xml";
fs.readFile(path, {encoding: 'utf-8'}, function(error, data) {
parser.parseString(data, function(err, res) {
console.log(res);
});
});
Result: Undefined
有没有办法手动处理 XML 文件(不带包)?
【问题讨论】:
-
您的“XML”文件格式不正确:它包含未定义的实体引用
&unc;。所以解析应该失败。
标签: javascript node.js xml