Home > Article > Backend Development > How to handle object serialization and deserialization in C# development
How to handle object serialization and deserialization in C# development requires specific code examples
In C# development, object serialization and deserialization are very important the concept of. Serialization converts an object into a format that can be transmitted over the network or stored on disk, while deserialization converts the serialized data back into the original object. This article will introduce how to handle the serialization and deserialization of objects in C#, and provide some specific code examples.
Json.NET is a popular third-party library that allows for convenient object serialization in C# ization and deserialization. First, we need to install the Json.NET library. Json.NET can be installed in Visual Studio via the NuGet package manager.
a) Object serialization example
The following code example demonstrates how to serialize a Person object into a JSON string:
using Newtonsoft.Json; using System; public class Person { public string Name { get; set; } public int Age { get; set; } } public static void Main() { Person person = new Person { Name = "John Doe", Age = 30 }; string json = JsonConvert.SerializeObject(person); Console.WriteLine(json); }
In this example, we use The JsonConvert.SerializeObject method converts the Person object into a JSON string and outputs the result through Console.WriteLine.
b) Object deserialization example
The following code example demonstrates how to deserialize a JSON string into a Person object:
using Newtonsoft.Json; using System; public class Person { public string Name { get; set; } public int Age { get; set; } } public static void Main() { string json = "{"Name":"John Doe","Age":30}"; Person person = JsonConvert.DeserializeObject<Person>(json); Console.WriteLine(person.Name); Console.WriteLine(person.Age); }
In this example, We use the JsonConvert.DeserializeObject method to convert the JSON string to a Person object and output the values of the Name and Age properties through Console.WriteLine.
In addition to the Json.NET library, C# also provides the BinaryFormatter class, which can be used to serialize objects into Binary format and deserialize binary data into objects. The following is an example of serialization and deserialization using BinaryFormatter:
a) Object serialization example
The following code example demonstrates how to serialize a Person object into binary data:
using System; using System.IO; using System.Runtime.Serialization.Formatters.Binary; [Serializable] public class Person { public string Name { get; set; } public int Age { get; set; } } public static void Main() { Person person = new Person { Name = "John Doe", Age = 30 }; BinaryFormatter formatter = new BinaryFormatter(); MemoryStream stream = new MemoryStream(); formatter.Serialize(stream, person); byte[] binaryData = stream.ToArray(); stream.Close(); Console.WriteLine(BitConverter.ToString(binaryData)); }
In this example, we create a Person object and serialize it into a memory stream using the BinaryFormatter.Serialize method. Then, get the binary data through the MemoryStream.ToArray method and output it as a string using the BitConverter.ToString method.
b) Object deserialization example
The following code example demonstrates how to deserialize binary data into a Person object:
using System; using System.IO; using System.Runtime.Serialization.Formatters.Binary; [Serializable] public class Person { public string Name { get; set; } public int Age { get; set; } } public static void Main() { string binaryDataString = "01-00-00-00-02-00-00-00-00-00-00-00-09-4A-6F-68-6E-20-44-6F-65-00-1E-00-00-00-00-00-00-00"; byte[] binaryData = BitConverter.GetBytes(binaryDataString.Replace("-", "")); BinaryFormatter formatter = new BinaryFormatter(); MemoryStream stream = new MemoryStream(binaryData); Person person = (Person)formatter.Deserialize(stream); stream.Close(); Console.WriteLine(person.Name); Console.WriteLine(person.Age); }
In this example, we use The BinaryFormatter.Deserialize method deserializes binary data into Person objects and outputs the values of the Name and Age properties through Console.WriteLine.
Summary
Through this article, we learned how to handle object serialization and deserialization in C# development. We used the Json.NET library and the BinaryFormatter class to perform serialization and deserialization examples respectively, and provided specific code snippets. Please choose the appropriate method to handle object serialization and deserialization based on actual needs.
The above is the detailed content of How to handle object serialization and deserialization in C# development. For more information, please follow other related articles on the PHP Chinese website!