我有一个嵌套的 json 对象。为了简单起见:
data = {'key1': 1, 'key2': 2, 'key3': {'nestedKey1': 3, 'nestedKey2': 4}}
一个真实的对象更大,但关键是它是一个嵌套的对象。值可以是字符串、数字或其他对象。现在我需要得到一个 excel 表(对于这个特定的 json 看起来像这样):
|----------------------------------------
| key1 | key2 | key3 |
| | |--------------------------
| | | nestedKey1 | nestedKey2 |
|----------------------------------------
| 1 | 2 | 3 | 4 |
|----------------------------------------
为此,我尝试使用 xlsx 库。我按如下方式导入库:
import { WorkSheet, WorkBook, utils, writeFile } from 'xlsx';
在我的方法中,我定义了对象:
let myObj = {'key1': 1, 'key2': 2, 'key3': {'nestedKey1': 3, 'nestedKey2': 4}}
然后我创建一个工作表和工作簿:
const workSheet: WorkSheet = utils.json_to_sheet([myObj]);
const workBook: WorkBook = utils.book_new();
utils.book_append_sheet(workBook, workSheet, 'object_to_save');
最后将其写入文件:
writeFile(workBook, 'Tests.xlsx');
但很可能它不会按照我希望的方式处理嵌套对象。我不知道我应该怎么做才能得到想要的结果。
原文由 GoBear 发布,翻译遵循 CC BY-SA 4.0 许可协议
使用
excel4node
我们可以轻松做到。这里显示我创建表的JSON,并根据我的要求转换JSON。
这是 node.js 中的解决方案:
输出