我正在使用aws-sdk作为Nodejs,我正在以缓冲区的形式从AWS桶中获取一个对象,如下所示:[31,139,8,0,0,0 ... ]
该文件是带有csv的gzip,filename.csv.gz
如何转换缓冲区并简单地读取文件并解析内容?
答案 0 :(得分:1)
zlib
库可以对一个缓冲区进行gunzip,这样你就可以使用它从s3 Body
函数解压缩回调数据参数的缓冲区getObject
属性: / p>
const zlib = require("zlib")
zlib.gunzip(data.Body, function(err, csvFileBuffer) {
//process CSV file
})
这意味着csvFileBuffer是csv文件的缓冲区。然后,您可以将其读入包含csvFileBuffer.toString('utf8')
的字符串,或以其他方式读取以实际处理CSV文件