问题描述
const data = await db.collection('myCollection').find(filterQuery).project(projection).toArray();
data.map(record => { record._id = record._id.toString() }); // Converting objectId to string
// Data is:
[
{
"_id": "60bf71cb31657b3e2c5e8d3c","id": 1,"productName": "Phillips L8FB86ES","copy1": "De beste wasmachine voor jou.","copy2": "Vandaag besteld.","copy3": "Morgen wassen.",},...
]
我想将此数组转换为 XML
const convert = require('xml-js');
transformed = convert.json2xml(data,{ compact: true,ignoreComment: true,spaces: 4 });
在此过程中我没有遇到任何错误,但是我将此文件上传到了云存储,并且上传到那里的文件已损坏。我收到这样的错误:
This page contains the following errors:
error on line 1 at column 2: StartTag: invalid element name
Below is a rendering of the page up to the first error.
我真的不知道这有什么问题。如有任何帮助,我将不胜感激。
注意:我也尝试过 xml2js、fast-xml-parser 和 jstoxml 包。但结果没有改变。
注2:
当我登录 transformed
(转换的 XML 对象)时
<0>
<_id>60bf71cb31657b3e2c5e8d3c</_id>
<id>1</id>
<productName>Phillips L8FB86ES</productName>
<copy1>De beste wasmachine voor jou.</copy1>
<copy2>Vandaag besteld.</copy2>
<copy3>Morgen wassen.</copy3>
</0>
</1>
...
编辑 3: 我了解到 XML 标签不能以数字开头。那么如何将数组转换为 XML?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)