>백엔드 개발 >C++ >JSON.NET 및 기타 방법을 사용하여 JSON 문자열의 유효성을 검사하는 방법은 무엇입니까?

JSON.NET 및 기타 방법을 사용하여 JSON 문자열의 유효성을 검사하는 방법은 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2025-01-10 22:02:44786검색

How to Validate JSON Strings Using JSON.NET and Other Methods?

JSON.NET을 사용하여 JSON 문자열 유효성 검사

JSON 문자열의 유효성을 보장하는 것은 데이터 무결성을 위해 매우 중요합니다. JSON.NET을 사용하여 이를 달성하는 방법은 다음과 같습니다.

Try-Catch 블록과 함께 코드 사용:

권장되는 접근 방식은 try-catch 블록의 문자열을 구문 분석하고 구문 분석 중에 발생하는 모든 예외를 처리하는 것입니다. 예시는 다음과 같습니다.

<code class="language-csharp">using Newtonsoft.Json;

public static bool IsValidJson(string strInput)
{
    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;
    }
}</code>

객체 또는 배열 구조 확인:

유효성 검사를 더욱 강화하려면 문자열이 각각 "{"(객체의 경우) 또는 "["(배열의 경우)로 시작하고 "}" 또는 "]"로 끝나는지 확인하세요. 이렇게 하면 구문 분석 전에 올바른 JSON 구조가 보장됩니다.

<code class="language-csharp">...
if ((strInput.StartsWith("{") && strInput.EndsWith("}")) ||
    (strInput.StartsWith("[") && strInput.EndsWith("]"))) {
        ...
}
...</code>

대안: System.Json 네임스페이스 사용:

JSON.NET을 사용할 수 없는 경우 .Net Framework 4.5에서 System.Json 네임스페이스를 사용할 수 있습니다. 예시는 다음과 같습니다.

<code class="language-csharp">using System.Json;

string jsonString = "someString";
try
{
    var tmpObj = JsonValue.Parse(jsonString);
}
catch (FormatException fex)
{
    Console.WriteLine(fex);
}
catch (Exception ex)
{
    Console.WriteLine(ex.ToString());
}</code>

비코드 옵션: 온라인 도구:

작은 JSON 문자열의 유효성을 빠르게 검사하려면 JSONLint와 같은 온라인 도구가 유용합니다. json2csharp.com과 같은 사이트를 사용하여 템플릿 클래스를 생성하고 JSON.NET을 사용하여 JSON을 역직렬화할 수도 있습니다.

위 내용은 JSON.NET 및 기타 방법을 사용하여 JSON 문자열의 유효성을 검사하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.