轻松将 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);
}
流阅读器还会发出事件,例如当它到达电子表格的末尾或发生错误时。
总的来说,这个脚本非常轻量且简短。最长的部分通常是定义行的部分(见上文)。
您的输入
希望你能从这篇小文章中学到一些新东西。欢迎在下方评论区留言,分享你的想法或疑问!:)
鏂囩珷鏉ユ簮锛�https://dev.to/nena/easily-parse-an-excel-spreadsheet-into-json-2dg7