Divya RS Ответов: 1

Преобразование JSON-файла в CSV-файл на языке C#


Привет,
Я пытаюсь преобразовать json в csv. json, который я использую, - это сложный json с глубокими вложенными массивами и дочерними объектами. Преобразование json - & gt; xml -> dtatable - & gt;csv не работает, так как мне не хватает некоторых иерархий в этом подходе.

Может ли кто-нибудь предложить какой-то подход к преобразованию?

это та часть образца json, которую я использую:

{
    "ParentRoot": {
        "Root1": [
            {
                "Value1": {
                    "innervalue1": "value",
                    "innervalue2": "value",
                    "innervalue3": "value",
                    "innervalue4": "value",
                    "innervalue5": "value",
                    "innervalue6": "value",
                    "innervalue7": "value"
                }
            }
        ],
        "Root2": {
            "Value2": {
                "innervalue1": "value",
                "innerArray1": {
                    "innerarrayvalue1": "value",
                    "innerarrayvalue2": "value",
                    "innerarrayvalue3": "value"
                },
                "innerArray2": {
                    "innerarrayvalue1":"value",
                    "innerarrayvalue2": "value",
                    "innerarrayvalue3": "value",
                    "innerarrayvalue4": "value",
                    "innerarrayvalue5": [
                        {
                            "childarrayValue": "value",
                            "childarrayValue2": "value"
                        },
                        {
                            "childarrayValue": "value",
                            "childarrayValue2": "value"
                        } ],

                    "other value": null
                }
            },
            "Root2child": [
                {
                    "innerValue": "value",
                    "innervalue2": "value",
                    "root2child": {
                        "innerValue": "value",
                        "innerValue1": "value",
                        "innerValue2": "value",
                        "innerValue3": "value"
                    },
                    "innerValue2": [
                        {
                            "inervalue3": "value",
                            "inervalue4": "value",
                            "inervalue5": "value",
                            "inervalue6": "value",
                            "inervalue7": "value",
                            "inervalue8": "value",
                            "inervalue9": "value",
                            "inervalue10": "value",
                            "inervalue11": "value",
                            "inervalue12": "value",
                            "inervalue13": "value",
                            "inervalue14": "value",
                            "inervalue15": "value",
                            "inervalue16": "value",
                            "inervalue17": "value",
                            "inervalue18": "value",
                            "inervalue19": "value",
                            "inervalue20": "value",
                            "inervalue21": "value",
                            "inervalue22": "",
                            "inerArray": {
                                "inerArrayValue": "value",
                                "inerArray": {
                                    "innerArrayElement": "value",
                                    "innerArrayElement1": "value"
                                },
                                "innerArrayValue2": [
                                    {
                                        "element": "value"
                                    }
                                ]
                            }
                        }
                    ]
                }
            ]
        }

        }

    }


Что я уже пробовал:

Пробовал разные логики, но ничего не помогало

F-ES Sitecore

Как будет выглядеть CSV-файл?

1 Ответов

Рейтинг:
0

Afzaal Ahmad Zeeshan

Нет никакой необходимости в таком большом преобразовании типов,

Цитата:
Преобразование json- & gt; xml - & gt; dtatable - & gt;csv не работает
Вы можете просто преобразовать документ JSON в документ CSV. Для этого вам понадобятся 2 библиотеки, 1 из которых будет преобразовываться из JSON в объекты среды выполнения, а затем другая, которая сопоставит эти объекты среды выполнения с документом CSV.

Мы знаем о Json.NET library, то есть еще одна библиотека, написанная для преобразования объектов в CSV; Простая и быстрая библиотека CSV на языке C#[^], взгляните на примеры кодирования, а затем напишите их в своем собственном приложении.

А что касается вашего преобразования типов, то почему это не работает? Я думаю, что это так, вот доказательство этого, то же самое преобразование было помечено как ответ на эту тему, Преобразование строки JSON в CSV и CSV в JSON в c# - переполнение стека[^]


Divya RS

Спасибо Afzaal. Я буду
попробуй это и увидишь