轻松将 Excel 电子表格解析为 JSON 格式?我为什么需要这个功能?如何使用它?

2025-06-10

轻松将 Excel 电子表格解析为 JSON

我为什么需要这个?

我如何使用它?

你知道吗?使用 Node.js 可以轻松解析 Excel 电子表格。继续阅读,加快你的信息检索过程。

我为什么需要这个?

我几个月前学会了这个,之后就一直在用它。我发现这个小脚本在我的日常生活中有很多用例,无论是在工作中,还是在私人生活中,或者业余项目中,都能派上用场。几乎在所有需要将电子表格转换为 JSON 格式的场景中,你都可以使用它。

以下是一些示例:

  • 你正在与客户合作,需要一种简单的方法来维护你在项目中使用的数据,大多数人都熟悉使用 Excel
  • 你与几个人合作,并希望每个人都有一个安全的地方来收集数据
  • 你喜欢用 Excel 规划你的生活,但想进一步处理数据 - 也许你想创建一个关于你精心计划的公路旅行的精美网站
  • 以及更多,发挥创意!

我如何使用它?

为此,您只需要两个 Node.js 模块:用于解析数据的xlsx-stream-reader和用于保存创建的 JSON 文件的fs 。

xlsx-stream-reader 会解析电子表格的每一行,并允许您根据需要处理数据。我通常将数据保存在一个数组中,其中每一行代表一个元素:

解析过程的代码示例

let currentRow = {};

// iterating the rows 
row.values.forEach(function (rowVal, colNum) {

    if (rowVal && rowVal !== "") {
        // parsing all columns 
        if (colNum == "1") {

            currentRow.id = rowVal; // ID
        } else if (colNum == "2") {

            currentRow.name = rowVal; // name
        } else if (colNum == "3") {

            currentRow.img = rowVal; // img
        } 
    }
});

if (currentRow.name) {

    console.log(currentRow);

    // push the current row into your array
    dataInRows.push(currentRow);
}
Enter fullscreen mode Exit fullscreen mode

流阅读器还会发出事件,例如当它到达电子表格的末尾或发生错误时。

总的来说,这个脚本非常轻量且简短。最长的部分通常是定义行的部分(见上文)。

您的输入

希望你能从这篇小文章中学到一些新东西。欢迎在下方评论区留言,分享你的想法或疑问!:)

鏂囩珷鏉ユ簮锛�https://dev.to/nena/easily-parse-an-excel-spreadsheet-into-json-2dg7
PREV
第 1 天 — 简介 — 30 天学习 Node.js [迷你系列]
NEXT
编程语言的诞生:Slate [第一部分] [第一部分] 介绍 Slate!那么它现在能做什么呢?一门新语言?为什么?它有什么不同?我能用它吗?你是怎么做到的?