在node.js中将ini.txt转换为JSON

问题描述 投票:1回答:1

我目前面临以下问题:

对于推入S3 Bucket的特定机器有一个ini.txt,然后触发lambda。 ini.txt看起来像这样:

1 | test
1sdf | test2
2sdf | abcdefghifsfd
sdfsdfsdf

所以我们有一个id |消息,但没有分隔符,有时消息太长,需要两行。

我需要将此ini.txt转换为JSON对象。

我已经能够在我的脚本中将ini的内容作为字符串获取。

你们有没有想法如何解决这个问题,或者是否已经存在针对该问题的节点包?

我感谢每一个帮助。

谢谢!

node.js json ini converters
1个回答
0
投票

我为你写了代码:

const { readFileSync } = require('fs')

const data = readFileSync('ini.txt', 'utf8').split(/[\n\r]/)
const result = {}

let prev = {}
let preKey

data.forEach(line => {
    const key = line.split('|')[0]
    const value = line.split('|')[1]
    const _ = {}

    if (!value) {
        prev[preKey] += key
        result[preKey] = prev[preKey]
    } else {
        result[key] = value
    }

    _[key] = value
    prev = _
    preKey = key
})

console.log(JSON.stringify(result))
© www.soinside.com 2019 - 2024. All rights reserved.