【问题标题】:How to convert a list of numbers to a json如何将数字列表转换为json
【发布时间】:2019-11-11 04:45:40
【问题描述】:

如何将文本文件中的数字列表转换为有效的 json。 例如,我在文本文件中有一个数字列表,例如:

1234, 1235,....

我希望它被转换成像

这样的 JSON 结构
data : [{
   code : "1234"
   },
  { 
   code: "1235"
  },....
]

【问题讨论】:

  • 欢迎来到 Stackoverflow。请拨打tour(并获得徽章)。您的问题没有任何尝试自行解决此问题。这个想法是让您尝试让某些事情起作用,然后带着您无法解决的特定问题来到这里。参观并在帮助中心阅读有关How to ask a good question 的信息将提供您需要的所有信息。
  • 你所说的 JSON 不是 JSON。这是一个格式错误的键/值对,应该包含在 {} 中 - 然后它将是一个对象文字。您需要阅读该文件并执行必要的工作来创建此对象。
  • 您是否已经从文件中读取了行?

标签: javascript json typescript text logic


【解决方案1】:

获得文件内容后,用逗号将其拆分,然后将其映射到对象:

const fileContents = `1234, 1235`;

const result = fileContents
  .split(',')
  .map(x => ({
    code: x
  }));
  
console.dir(result);
  

您可以使用fs.readFile 获取节点中文件的内容,不过the sync version 稍微简单一些。

【讨论】:

    【解决方案2】:
    // There is a built-in Module or in-built library in NodeJs which handles all 
    // the reading operations called fs (File-System)   
    // Requiring fs module in which 
    // readFile function is defined. 
    
    const fs = require('fs')
    
    fs.readFile('input.txt', (err, data) => {
        if (err) throw err;
    
        let dataArray = data.toString().split(", ");
        let dataObjectArray = dataArray.map(data => {
            return { code: data }
        });
        console.log(dataObjectArray); // will give desired output
    });
    

    【讨论】:

      【解决方案3】:
          const file= '1234,...' ;
      
      var jsonModel = file
        .split(',')
        .map(x => {
          code: x.trim() 
        });
      
      var jsonString = JSON.stringify(jsonModel)
      

      【讨论】:

        猜你喜欢
        • 2021-02-03
        • 2020-08-21
        • 1970-01-01
        • 1970-01-01
        • 2012-01-01
        • 2021-05-10
        • 1970-01-01
        • 1970-01-01
        • 2019-03-08
        相关资源
        最近更新 更多