Maison > développement back-end > C++ > Comment puis-je valider les chaînes JSON à l'aide de JSON.NET et d'autres méthodes ?

Comment puis-je valider les chaînes JSON à l'aide de JSON.NET et d'autres méthodes ?

Mary-Kate Olsen
Libérer: 2025-01-10 21:52:42
original
244 Les gens l'ont consulté

How Can I Validate JSON Strings Using JSON.NET and Other Methods?

Utilisez JSON.NET pour valider les chaînes JSON

JSON.NET fournit plusieurs méthodes pour vérifier si une chaîne est une donnée JSON valide.

Utilisez le bloc try-catch :

Une approche courante consiste à analyser la chaîne dans un bloc try-catch :

<code class="language-csharp">try
{
   var obj = JToken.Parse(strInput);
   // 解析成功,JSON 有效。
}
catch (JsonReaderException ex)
{
   // 捕获异常,JSON 无效。
}
catch (Exception ex)
{
   // 其他异常,根据情况处理。
}</code>
Copier après la connexion

Vérifiez les caractères de début et de fin :

De plus, vous pouvez vérifier si une chaîne commence par "{" ou "[" et se termine respectivement par "}" ou "]" :

<code class="language-csharp">private static bool IsValidJson(string strInput)
{
   if ((strInput.StartsWith("{") && strInput.EndsWith("}")) ||
      (strInput.StartsWith("[") && strInput.EndsWith("]")))
   {
      try
      {
         var obj = JToken.Parse(strInput);
         return true;
      }
      catch
      {
         return false;
      }
   }
   return false;
}</code>
Copier après la connexion

Utilisez l'espace de noms System.Json (aucun JSON.NET requis) :

Si vous ne souhaitez pas utiliser JSON.NET, vous pouvez utiliser l'espace de noms System.Json :

<code class="language-csharp">try
{
   var tmpObj = JsonValue.Parse(jsonString);
   // JSON 有效。
}
catch
{
   // JSON 无效。
}</code>
Copier après la connexion

Méthodes sans code :

Pour les chaînes JSON plus petites, si vous préférez la validation manuelle, vous pouvez :

  • Utilisez des outils en ligne, tels que JSONLint, pour vérifier la validité.
  • Copiez une chaîne JSON valide sur JSON2csharp.com, générez un modèle de classe et désérialisez à l'aide de JSON.NET.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal