Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Menyahseri JSON dengan Kekunci Dinamik Menggunakan Kamus dalam C#?

Bagaimana untuk Menyahseri JSON dengan Kekunci Dinamik Menggunakan Kamus dalam C#?

DDD
Lepaskan: 2025-01-17 10:17:09
asal
860 orang telah melayarinya

How to Deserialize JSON with Dynamic Keys Using a Dictionary in C#?

Pengendalian fleksibel penyahserikatan JSON dengan kekunci dinamik menggunakan kamus

Dalam dunia JSON, menghadapi rentetan JSON dengan kekunci akar yang dinamik dan tidak dapat diramalkan boleh menimbulkan cabaran apabila menyahsiri objek. Inilah cara untuk menyelesaikan masalah ini menggunakan kaedah kamus.

Sebagai contoh, pertimbangkan rentetan JSON berikut:

<code>{
    "daily": {
        "1337990400000": 443447,
        "1338076800000": 444693,
        "1338163200000": 452282,
        "1338249600000": 462189,
        "1338336000000": 466626
    }
}</code>
Salin selepas log masuk

Memandangkan kunci adalah dinamik, menggunakan JavascriptSerializer dengan struktur kelas tidak mencukupi di sini. Penyelesaian yang lebih fleksibel ialah menyahsiri rentetan JSON ke dalam kamus, yang membolehkan kami mengakses kekunci dinamik dan nilai yang sepadan dengan mudah.

<code class="language-csharp">var deser = new JavaScriptSerializer().Deserialize<Dictionary<string, Dictionary<string, int>>>(val);</code>
Salin selepas log masuk

Baris ini mencipta kamus deser dengan kekuncinya adalah rentetan dan nilainya ialah kamus dengan kunci rentetan dan nilai integer. Ia secara berkesan memetakan kunci dinamik dalam rentetan JSON ke kamus perantaraan.

Untuk mengakses data tertentu kita boleh menggunakan kod berikut:

<code class="language-csharp">var justDaily = deser["daily"];</code>
Salin selepas log masuk

Pembolehubah justDaily kini mengandungi kamus yang mewakili objek "harian" daripada rentetan JSON. Kita boleh mengulangi kekunci dan nilainya untuk mengekstrak kunci dinamik dan nilai yang sepadan.

<code class="language-csharp">foreach (string key in justDaily.Keys)
    Console.WriteLine(key + ": " + justDaily[key]);</code>
Salin selepas log masuk

Pendekatan ini membolehkan kami mengendalikan rentetan JSON dengan kekunci akar dinamik dengan menukarnya kepada struktur kamus dan memberikan fleksibiliti semasa mengakses data. Anda boleh memanfaatkan sepenuhnya kuasa kamus untuk menyahsiri JSON dengan mudah walaupun kuncinya tidak dapat diramalkan.

Atas ialah kandungan terperinci Bagaimana untuk Menyahseri JSON dengan Kekunci Dinamik Menggunakan Kamus dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan