進行數據的序列化和反序列化:using System;
using System.Web.Script.Serialization;
namespace Example
{
public class Program
{
public static void Main(string[] args)
{
// 創建一個學生對象
var student = new Student
{
Name = "Tom",
Age = 18
};
// 將學生對象轉換成 JSON 字符串
var serializer = new JavaScriptSerializer();
var json = serializer.Serialize(student);
// 打印原始的 JSON 字符串
Console.WriteLine("原始的 JSON 字符串:");
Console.WriteLine(json);
// 對 JSON 字符串進行 base64 編碼
var base64 = Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(json));
// 打印 base64 編碼后的字符串
Console.WriteLine("Base64 編碼后的字符串:");
Console.WriteLine(base64);
// 對 base64 編碼的字符串進行解碼
var decodedJson = System.Text.Encoding.UTF8.GetString(Convert.FromBase64String(base64));
// 將解碼后的字符串反序列化成對象
var deserializedStudent = serializer.Deserialize(decodedJson);
// 打印反序列化后的對象
Console.WriteLine("反序列化后的對象:");
Console.WriteLine("姓名:" + deserializedStudent.Name);
Console.WriteLine("年齡:" + deserializedStudent.Age);
}
}
public class Student
{
public string Name { get; set; }
public int Age { get; set; }
}
}
在上述示例中,我們使用了 JavaScriptSerializer 類完成了數據的序列化和反序列化工作。通過 Convert.ToBase64String 和 Convert.FromBase64String 方法實現了 base64 編碼和解碼。
總的來說,為我們提供了一種方便快捷的方式將 JSON 數據與 ASCII 字符串進行互相轉換。它極大地簡化了開發過程,并且可以提高數據傳輸的效率。無論是處理數據的序列化和反序列化,還是在數據傳輸中減少數據大小,使用都是非常實用的。