JSON 文字列の有効性を確認する効率的な方法: JSON.NET と System.Json
データ処理では、元の文字列が有効な JSON であることを確認することが重要です。 JSON.NET と System.Json はどちらも信頼性の高いソリューションを提供します。
コードの実装:
最も信頼できる方法は、JSON.NET の JToken.Parse
メソッドを使用し、それを try-catch
ブロック内にネストすることです。これにより、文字列を解析し、JSON が無効であることを示す例外をキャッチできるようになります。
<code class="language-csharp">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; } }</code>
.NET Framework 4.5 の System.Json
名前空間には、JsonValue.Parse
メソッドも用意されています。
<code class="language-csharp">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()); }</code>
コードは必要ありません:
小さい JSON 文字列の場合は、JSONLint や JSON2CSharp などのオンライン ツールを使用して、その有効性を検証し、逆シリアル化用のテンプレート クラスを生成できます。以上がJSON.NET または System.Json を使用して JSON 文字列の有効性を効率的に検証するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。