使用Node.js將數組數據寫入CSV文件的快速教程

你可以使用 objects-to-csv 這個優秀的庫,快速將數組對象寫入CSV文件。

當然還有其他許多庫可供選擇。我在一個自己的項目中發現了這個庫的實用性,因此寫了這個小教程。

如果你需要更注重性能的應用程序,可以使用基於stream的庫,例如 fast-csv

首先安裝它:

npm install objects-to-csv

然後在你的Node.js代碼中引入它:

const ObjectsToCsv = require('objects-to-csv')

當你有一個準備寫入CSV的對象數組時,初始化一個新的ObjectsToCsv對象實例:

const csv = new ObjectsToCsv(list)

然後調用 csv.toDisk(),並傳入你要寫入的文件(相對於你的應用程序的基本路徑):

await csv.toDisk('./list.csv')

這是一個基於Promise的API,我使用了await,所以你需要在一個async函數內調用這個API。

CSV中的列名自動從對象的屬性名中推斷出來。

請注意,這個命令會覆蓋文件中現有的內容。如果要追加到該文件,請傳遞一個帶有append屬性設置為true的第二個對象:

await csv.toDisk('./list.csv', { append: true })