我有 .txt 文件,其中标签(\t
)和分号(;
)分开数据,我想读取数据并创建JSON对象。我尝试了正则表达式,但我无法创建正确的正则表达式。任何帮助将不胜感激。
的test.txt
sam tory 22;raj kumar 24
output.json
[
{
"Fname": "sam",
"lastname": "troy",
"Age": "22",
},
{
"Fname": "raj",
"lastname": "kumar",
"Age": "24",
}
]
答案 0 :(得分:1)
您应该使用JavaScript split
功能来分割文字。
var r = [];
var t = "sam tory 22;raj kumar 24";
var v = t.split(";");
for (var i = 0; i < v.length; i++) {
var w = v[i].split("\t");
r.push({
Fname: w[0],
lastname: w[1],
Age: w[2]
});
}
console.log(r);
答案 1 :(得分:1)
使用this._jsonService.getData(url).pipe(
map(x => {
return x.filter(x => x.id === param.id)
}).subscribe();
模块读取文件内容。
fs
然后映射各个条目以将它们转换为对象:
var content = fs.readFileSync("profiles.tsv", "utf8");
答案 2 :(得分:0)
使用库 csvtojson:https://www.npmjs.com/package/csvtojson
这是测试代码:
const csv=require('csvtojson')
const filePath='test.tsv'
var main = async () => {
const jsonArray = await csv({delimiter:'\t'}).fromFile(filePath);
console.log("jsonArray:", jsonArray);
}
main()