当前位置: 首页 > 知识库问答 >
问题:

Jolt转换JSON文件与数据丰富和删除

梁泰
2023-03-14

我需要帮助,我是个新手。有一个json文件:

{
  "Date": "2021-01-01",
  "Status": "New",
  "Agreements": [
    {
      "ID_agreement": "12345",
      "ID": "fffffff",
      "balance": {
        "rub": 5,
        "usd": 6,
        "eur": 7
      },
      "withdrawal": {
        "rub": 8,
        "usd": 45,
        "eur": 6
      }
    },
    {
      "ID_agreement": "6789",
      "ID": "dddddd",
      "balance": {
        "rub": 10,
        "usd": 20,
        "eur": 30
      }
    }
  ]
}

在输出端,你真的需要得到这样的结果:

{
  "type": "DATA",
  "date": "2021-01-01",
  "id_agreement": "12345",
  "id": "fffffff",
  "source": "SITE",
  "unloadDateTime": "current date if possible",
  "balance": {
    "rub": 5,
    "usd": 6,
    "eur": 7
  },
  "withdrawal": {
    "rub": 8,
    "usd": 45,
    "eur": 6
  }
},
{
  "type": "DATA",
  "date": "2021-01-01",
  "id_agreement": "6789",
  "id": "dddddd",
  "source": "SITE",
  "unloadDateTime": "current date if possible",
  "balance": {
    "rub": 10,
    "usd": 20,
    "eur": 30
}

必须添加到每个块中:

  "type": "DATA",
  "date": "2021-01-01",
  "source": "SITE",
  "unloadDateTime": "current date if possible"

删除

"Status": "New"

原始文件很大,取款/余额字段在某个地方,而不是某个地方

我最初的震动规格:

[
  {
    "operation": "remove",
    "spec": {
      "Status": ""
    }
  },
  {
    "operation": "shift",
    "spec": {
      "Agreements": {
        "*": "&"
      },
      "balance": {
        "*": "&"
      }
    }
  }
 ]

使用格式化程序进行数小时的反汇编没有产生任何结果,任务是一次性的,请帮助,亲爱的同事们!

共有1个答案

邢弘业
2023-03-14

首先,位于底部的对象balance是冗余的。删除后,应用#符号来提供您想要更新当前移位转换的固定值,例如

json prettyprint-override">[
  {
    "operation": "remove",
    "spec": {
      "Status": ""
    }
  },
  {
    "operation": "shift",
    "spec": {
      "Agreements": {
        "*": {
          "#DATA": "[&1].type",
          "#2021-01-01": "[&1].date",
          "#SITE": "[&1].source",
          "#current date if possible": "[&1].unloadDateTime",
          "*": {
            "@": "[&2].&1"
          }
        }
      }
    }
  }
 ]
 类似资料:
  • 我想转换这个JSON: 对此JSON: 我目前正在使用该规范,但它不适合我: 有人能给出一个规范吗?有没有关于jolt JSON的明确文档 ................................................................................................................................

  • 我想转换我的嵌套json消息,并使用Jolt规范只获取必需的文件- 我的输入JSON: 低于我的规格输出,这不是预期的- 我尝试了很多选择,但国籍不是我预期的输出。请在这里帮助颠簸转换

  • 我必须将 JSON 输入转换为包含一个对象的数组。 我有这个 JOLT 配置: 以下是我的意见: 实际产量: 期望的输出: 你知道该怎么做吗? 谢谢你们的帮助

  • 我有json,其中包括多个产品,每个产品有多个不同的细节。使用jolt,我只需要输入json中的几个字段,遵循与输入json几乎相同的结构。我成功地迭代了产品,但是当我试图迭代每个产品变体时,我没有得到想要的输出。 输入. json 这里是Spec.json 我想要的预期输出。 我现在得到的实际输出。

  • 数据丰富是指用于增强,改进和改进原始数据的一系列过程。 它指的是有用的数据转换(原始数据到有用信息)。 数据丰富过程的重点是使数据成为现代企业或企业的宝贵数据资产。 最常见的数据丰富过程包括通过使用特定的决策算法来纠正数据库中的拼写错误或印刷错误。 数据丰富工具为简单数据表添加有用信息。 考虑以下代码进行单词拼写纠正 - import re from collections import Coun

  • 我正在尝试使用JOLT转换从JSON数组中移除一个字段。下面是输入JSON和预期输出JSON。< br >您能为提到的场景建议JOLT转换吗 输入JSON 预期输出