如何在 Node.js 中使用 CSV 文件

CSV(Comma Separated Values)是一种常见的数据格式,它以逗号作为分隔符来表示表格数据。在前端开发中,我们常常需要处理 CSV 文件,比如导入、导出数据等。在本文中,我们将介绍如何在 Node.js 中使用 CSV 文件。

安装 CSV 模块

首先,我们需要安装一个处理 CSV 文件的模块。在 Node.js 中,有很多这样的模块可供选择,比如 csv-parserfast-csvpapaparse 等。在本文中,我们选择 csv-parser 这个模块来演示。

在项目目录下,打开终端,执行以下命令来安装 csv-parser 模块:

--- ------- ----------

读取 CSV 文件

接下来,我们将演示如何读取一个 CSV 文件。假设我们有一个名为 data.csv 的文件,它包含以下数据:

--------
--------
------
----------

我们可以使用 csv-parser 模块来读取这个文件。将以下代码保存为 read-csv.js 文件:

----- --- - ----------------------
----- -- - --------------

-------------------------------
  ------------
  ----------- ----- -- -
    -----------------
  --
  ---------- -- -- -
    ---------------- ---- ------------ ------------
  ---

代码解释:

  • csv-parser 模块提供了一个 csv() 函数,用于将 CSV 数据转换为 JavaScript 对象。
  • fs 模块提供了一个 createReadStream() 函数,用于从文件中读取数据流。
  • 我们将 data.csv 文件的数据流传递给 csv() 函数,然后使用 pipe() 方法将它们连接起来。
  • 当数据流中有数据时,csv-parser 模块会触发 data 事件,并将转换后的 JavaScript 对象作为参数传递给回调函数。
  • 当数据流处理完毕时,csv-parser 模块会触发 end 事件。

运行以下命令来执行 read-csv.js 文件:

---- -----------

输出结果如下:

- ----- -------- ---- ---- -
- ----- ------ ---- ---- -
- ----- ---------- ---- ---- -
--- ---- ------------ ---------

我们成功读取了 data.csv 文件,并将其转换为 JavaScript 对象。

写入 CSV 文件

接下来,我们将演示如何将数据写入到一个 CSV 文件中。将以下代码保存为 write-csv.js 文件:

----- --------------- - --------------------------------------------

----- --------- - -----------------
  ----- -------------
  ------- -
    - --- ------- ------ ------ --
    - --- ------ ------ ----- --
  --
---

----- ---- - -
  - ----- -------- ---- ---- --
  - ----- ------ ---- ---- --
  - ----- ---------- ---- ---- --
--

----------------------------
  -------- -- -
    ---------------- ---- ------------ ----------
  ---

代码解释:

  • csv-writer 模块提供了一个 createObjectCsvWriter() 函数,用于创建一个 CSV 写入器。
  • 我们将 output.csv 文件作为写入器的输出路径,并指定了 CSV 文件的表头。
  • 我们创建了一个包含数据的 JavaScript 对象数组,并将其传递给写入器的 writeRecords() 方法。
  • 当数据写入完成时,writeRecords() 方法会返回一个 Promise 对象,我们使用 then() 方法来处理写入完成的回调函数。

运行以下命令来执行 write-csv.js 文件:

---- ------------

执行完毕后,我们可以在项目目录下找到一个名为 output.csv 的文件,它包含以下数据:

--------
--------
------
----------

我们成功将数据写入到了 output.csv 文件中。

总结

本文介绍了如何在 Node.js 中使用 csv-parser 模块来读取和写入 CSV 文件。读取 CSV 文件可以使用 fs 模块和 csv-parser 模块,写入 CSV 文件可以使用 csv-writer 模块。以上代码仅供参考,读者可以根据自己的需求进行修改和扩展。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/65f014e92b3ccec22f942ddc