亲宝软件园·资讯

展开

node.js生成与读取csv文件方法详解

人气:0

nodejs使用object-to-CSV库生成csv文件

object-to-CSV是一个非常棒的库,可以使用nodejs将对象数组快速写入CSV文件。

当然,还有许多其他的库。只是俺发现这对于俺的一个项目非常有用,因为俺必须生成一个一次性的CSV文件,所以俺编写了这个小教程。

在更面向性能的应用程序中,使用基于流的库(如fast-csv)可能适合您的需要。

npm install objects-to-csv

引入库:

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

当你有一个对象数组准备写入CSV,初始化一个新的ObjectsToCsv对象实例:

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

这是一个基于promise的API,我使用了await,所以需要在异步函数中调用它。

CSV中的列名是自动从对象属性名推断出来的。

注意,该命令覆盖文件的现有内容。要追加到该文件,传递第二个对象,将append属性设置为true:

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

node.js读取csv文件教程

在node.js中有许多不同的npm模块允许您从CSV文件中读取书库。

它们中的大多数都基于流,比如csv-parser或node-csv。

它们对于在生产环境中处理CSV非常有用。

当我不考虑性能时,我喜欢让事情变得简单。例如,为了一次性解析CSV,我必须合并后端系统。

为此,俺使用了neat-csv,这是一个向简单的异步/等待接口公开csv解析器功能的包。

安装依赖

安装它使用npm安装neat-csv,并要求它在您的应用程序:

在你的项目中,使用npm或yarn安装neat-csv:

npm install neat-csv -S
npm yarn neat-csv -S

业务实现

引入neat-csv

const neatCsv = require('neat-csv');

然后从文件系统加载CSV,调用neatCsv传递文件内容:

const fs = require('fs')

fs.readFile('./file.csv', async (err, data) => {
  if (err) {
    console.error(err)
    return
  }
  console.log(await neatCsv(data))
})

现在,你就可以开始对数据进行任何需要的操作,数据的格式是JavaScript对象数组。

更多关于node.js操作csv文件方法请查看下面的相关链接

加载全部内容

相关教程
猜你喜欢
用户评论