从文本文件到JSON对象的文本数据

时间:2019-01-06 07:40:05

标签: node.js

我有一个文本文件,其中包含以下示例数据。

Application.. 4157 10/10/2018 14:24:567 message description 1
Application.. 4157 10/10/2018 14:24:678 message description 2

我希望将其转换为下面的JSON文件

{  [   {
    "appname" : "Application..",
    "PID" : "4157",
    "date" : "10/10/2018",
    "time" : "14:24:567",
    "message":"message description 1"   },  

{         “ appname”:“ Application ..”,         “ PID”:“ 4157”,         “ date”:“ 10/10/2018”,         “ time”:“ 14:24:,678”,         “ message”:“邮件说明2”}]}

请给我一个例子,如何在任何JSON模式的帮助下实现这一目标...

我正在通过读取文本文件在节点js中尝试此操作。

感谢您的帮助。

感谢和问候, -阿尼尔·卡塔(Anil Katta)

1 个答案:

答案 0 :(得分:0)

既然您说过您可以阅读和处理每一行,请尝试以下代码。此代码采用字符串,删除空格并在数组中放置其他任何单词,然后可以创建对象并将这些数组值传递到对象值位置,然后将对象推送到message数组中,在其中将许多消息存储为对象。在文件中实现此代码时,请注意要使用的循环。

将功劳计入Patrick Roberts

let line = `Application.. 4157 10/10/2018 14:24:567 message description 1`;
const [appname, PID, date, time, ...message] = line.split(' '); 
let messages = [];
messages.push({ appname, PID, date, time, message: message.join(' ') });

示例JSON内容:

[
  {
    "appname":"Application..",
    "PID":"4157",
    "date":"10/10/2018",
    "time":"14:24:567",
    "message":"message description 1"
  },
  {
    "appname":"Application..",
    "PID":"4157",
    "date":"10/10/2018",
    "time":"14:24:567",
    "message":"message description 2"
   }
]