ホームページ > バックエンド開発 > C++ > JSON.NET または代替方法を使用して JSON 文字列を検証するにはどうすればよいですか?

JSON.NET または代替方法を使用して JSON 文字列を検証するにはどうすればよいですか?

Linda Hamilton
リリース: 2025-01-10 22:16:45
オリジナル
871 人が閲覧しました

How Can I Validate JSON Strings Using JSON.NET or Alternative Methods?

JSON.NET を使用して JSON 文字列の有効性を検証します

文字列が有効な JSON 形式であることを確認することは、データの整合性にとって重要です。人気の JSON 処理ライブラリ JSON.NET には、JSON 文字列を検証するためのメソッドがいくつか用意されています。

TryParse または JToken.Parse を使用する

残念ながら、JSON.NET には TryParse メソッドがありません。ただし、try-catch ブロックで JToken.Parse を利用することはできます:

<code class="language-csharp">private static bool IsValidJson(string strInput)
{
    if (string.IsNullOrWhiteSpace(strInput)) { return false; }
    strInput = strInput.Trim();
    try
    {
        var obj = JToken.Parse(strInput);
        return true;
    }
    catch (JsonReaderException)
    {
        return false;
    }
    catch (Exception)
    {
        return false;
    }
}</code>
ログイン後にコピー

オブジェクトと配列構造の追加チェック

検証の精度を向上させるために、次の追加チェックを検討することができます:

<code class="language-csharp">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)
        {
            return false;
        }
        catch (Exception)
        {
            return false;
        }
    }
    else
    {
        return false;
    }
}</code>
ログイン後にコピー

JSON.NET を必要としない代替手段

JSON.NET を使用できない場合は、.NET で System.Json 名前空間を使用することを検討してください。

<code class="language-csharp">string jsonString = "someString";
try
{
    var tmpObj = JsonValue.Parse(jsonString);
}
catch (FormatException)
{
    // 无效的 JSON 格式
}
catch (Exception)
{
    // 其他异常
}</code>
ログイン後にコピー

この方法では、System.Json NuGet パッケージがインストールされている必要があることに注意してください。

ノンコードアプローチ

小さな JSON 文字列を迅速に検証するには、JSONLint などのオンライン ツールを使用できます。 JSON 構文エラーを特定し、役立つフィードバックを提供できます。

以上がJSON.NET または代替方法を使用して JSON 文字列を検証するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート