Cara yang cekap untuk memastikan kesahihan rentetan JSON: JSON.NET dan System.Json
Dalam pemprosesan data, adalah penting untuk mengesahkan bahawa rentetan asal adalah JSON yang sah. Kedua-dua JSON.NET dan System.Json menyediakan penyelesaian yang boleh dipercayai.
Pelaksanaan kod:
Cara yang paling boleh dipercayai ialah menggunakan kaedah JToken.Parse
JSON.NET dan menyarangkannya dalam blok try-catch
. Ini membolehkan menghuraikan rentetan dan menangkap sebarang pengecualian yang menunjukkan JSON tidak sah.
using Newtonsoft.Json; using Newtonsoft.Json.Linq; private static bool IsValidJson(string strInput) { if (string.IsNullOrWhiteSpace(strInput)) { return false; } strInput = strInput.Trim(); if ((strInput.StartsWith("{") && strInput.EndsWith("}")) || // 对象 (strInput.StartsWith("[") && strInput.EndsWith("]"))) // 数组 { try { var obj = JToken.Parse(strInput); return true; } catch (JsonReaderException jex) { // 解析异常 Console.WriteLine(jex.Message); return false; } catch (Exception ex) { // 其他异常 Console.WriteLine(ex.ToString()); return false; } } else { return false; } }
System.Json
.NET Framework 4.5 juga menyediakan kaedah JsonValue.Parse
:
using System.Runtime.Serialization.Json; string jsonString = "someString"; try { var tmpObj = JsonValue.Parse(jsonString); } catch (FormatException fex) { // 无效的JSON格式 Console.WriteLine(fex); } catch (Exception ex) { // 其他异常 Console.WriteLine(ex.ToString()); }
Tiada kod diperlukan:
Untuk rentetan JSON yang lebih kecil, anda boleh menggunakan alatan dalam talian seperti JSONLint dan JSON2CSharp untuk mengesahkan kesahihannya dan menjana kelas templat untuk penyahserilan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengesahkan Kesahan Rentetan JSON Dengan Cekap Menggunakan JSON.NET atau System.Json?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!