Menggunakan JSON.NET untuk memproses JSON yang dibatasi baris (LDJSON) dalam C#
Dalam sesetengah aplikasi, seperti Google BigQuery, format JSON (LDJSON) yang dibatasi baris diperlukan. Format ini memisahkan setiap objek JSON dengan aksara baris baharu, membolehkan import data yang cekap.
Cara mensiri dan menyahsiri LDJSON
Pustaka C# JSON JSON.NET yang popular menyediakan penyelesaian kepada masalah LDJSON. Anda boleh menghuraikan data LDJSON secara manual dengan menggunakan JsonTextReader dan menetapkan bendera SupportMultipleContent kepada benar.
Contoh siri
Untuk senarai objek, anda boleh mensiri setiap objek secara individu dan menggabungkannya menjadi satu rentetan LDJSON.
Contoh penyahserialisasian
Untuk menyahsiri data LDJSON, buat pembaca menggunakan JsonTextReader dan lelaran melalui objek ini, menyahsiri setiap objek kepada jenis objek yang sepadan.
Contoh kod (pseudokod, perlu dilaraskan mengikut jenis objek sebenar):
<code class="language-csharp">while (jsonReader.Read()) { Foo foo = jsonSerializer.Deserialize<Foo>(jsonReader); jsonList.Add(foo); }</code>
Jika hasil yang anda inginkan ialah senarai objek, anda boleh menambah setiap objek yang dinyahsiri pada senarai dalam satu gelung.
Sokongan untuk JSON yang dipisahkan koma
Dengan Json.Net 10.0.4 dan ke atas, kod yang disediakan juga menyokong entri JSON yang dipisahkan koma. Ini menjadikan kerja dengan format data JSON lebih fleksibel.
Ringkasan
Kaedah ini menyediakan mekanisme mudah untuk mensiri dan menyahsiri data LDJSON menggunakan JSON.NET dalam C#. Dengan menetapkan bendera SupportMultipleContent, anda boleh mengendalikan berbilang objek JSON dengan cekap dalam satu aliran.
Atas ialah kandungan terperinci Bagaimana untuk Mensiri dan Menyahseri JSON (LDJSON) dalam C# menggunakan JSON.NET?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!