我想要将文件的以下行转换为JSON,并将其保存到mongoose模式中。
>HWI-ST700660_96:2:1101:1455:2154#5@0/1
GAA…..GAATG应该是:
{“>HWI-ST700660_96:2:1101:1455:2154#5@0/1”: “GAA…..GAATG”}我已经尝试了几个选项,下面的一个示例,但没有成功,有什么建议吗?
const parser = require("csv-parse/lib/sync");//import parser
const fs = require("fs");//import file reader
const path = require("path");//for join paths
const sourceData = fs.readFileSync(path.join(__dirname, "Reads.txt"), "utf8");//read the file, locally stored
console.log(sourceData);//print out for checking
const documents = parser(sourceData);//parsing, it works for other situations I have tested, in a column like data
console.log(documents);//printing out这段代码给我的输出如下:
[ [ '>HWI-ST700660_96:2:1101:1455:2154#5@0/1' ],
[ 'GAATGGAATGAAATGGATAGGAATGGAATGGAATGGAATGGATTGGAATGGATTAGAATGGATTGGAATGGAATGAAATTAATTTGATTGGAATGGAATG' ],...发布于 2020-03-05 22:15:24
因为您使用的是解析器的默认配置,所以它只输出该配置中的数组数组。如果您希望接收对象,则需要首先为解析器提供一些选项(列)。看一看doc。
在使用同步解析模式时(就像您正在使用的模式一样),您可以提供如下选项:
const documents = parse(sourceData, {columns: true})columns:true将从输入csv的第一行推断列名。
https://stackoverflow.com/questions/60545123
复制相似问题