.net Json Convert Datetime

4 min read Jun 04, 2024
.net Json Convert Datetime

Convertir des dates et des heures JSON avec .NET

La conversion de dates et d'heures entre JSON et .NET peut être un processus délicat, car les deux formats utilisent des représentations différentes. .NET utilise des objets DateTime, tandis que JSON utilise des chaînes de caractères pour représenter les dates et les heures. Cet article explore les techniques courantes pour convertir des dates et des heures JSON en objets DateTime .NET et vice versa.

Utiliser la désérialisation JSON avec System.Text.Json

Le moyen le plus simple de convertir des dates et des heures JSON en objets DateTime .NET est d'utiliser la désérialisation JSON. Le package System.Text.Json, intégré à .NET, offre des fonctionnalités de désérialisation puissantes.

Exemple:

using System.Text.Json;

// JSON avec un champ de date
string jsonString = @"{""date"":""2023-09-29T10:00:00Z""}";

// Définir le modèle C#
public class MyData
{
    public DateTime date { get; set; }
}

// Désérialiser le JSON
MyData data = JsonSerializer.Deserialize(jsonString);

// La date est maintenant un objet DateTime .NET
Console.WriteLine(data.date); // Affiche : 2023-09-29 10:00:00

Convertir des dates et des heures JSON en objets DateTime

Si vous travaillez avec du JSON existant et que vous devez convertir des chaînes de caractères en objets DateTime, vous pouvez utiliser la méthode DateTime.Parse ou DateTime.ParseExact :

// Chaîne de date JSON
string jsonDate = "2023-09-29T10:00:00Z";

// Convertir en DateTime
DateTime date = DateTime.Parse(jsonDate); 

// Utiliser ParseExact pour un format spécifique
DateTime dateExact = DateTime.ParseExact(jsonDate, "yyyy-MM-ddTHH:mm:ssZ", null);

Console.WriteLine(date); 
Console.WriteLine(dateExact);

Convertir des objets DateTime en chaînes de caractères JSON

Pour convertir un objet DateTime en chaîne de caractères JSON, utilisez la méthode ToString avec un format compatible JSON :

DateTime date = DateTime.Now;

// Convertir en chaîne de caractères JSON
string jsonDate = date.ToString("yyyy-MM-ddTHH:mm:ssZ");

Console.WriteLine(jsonDate); // Affiche : 2023-09-29T16:37:59.727Z

Conclusion

La conversion de dates et d'heures JSON avec .NET est un processus courant qui nécessite une compréhension des formats utilisés par les deux plateformes. En utilisant la désérialisation JSON, les méthodes DateTime.Parse et ToString avec un format JSON, vous pouvez facilement convertir des dates et des heures entre JSON et .NET. N'oubliez pas de toujours utiliser des formats compatibles JSON pour garantir une interopérabilité optimale entre vos applications .NET et les services JSON.

Related Post


Featured Posts