C#JsonConvertSerializeObject 序列化时 对象中有一个byte数组 如何先转成中文在序列化
要先将byte数组转成中文再进行序列化,可以使用Encoding类的GetString方法将byte数组转换为字符串。
以下是一个示例代码:
using System;
using System.Text;
using Newtonsoft.Json;
public class MyClass
{
public byte[] Data { get; set; }
}
public class Program
{
public static void Main()
{
// 创建一个包含中文的byte数组
byte[] bytes = Encoding.UTF8.GetBytes("你好世界");
// 将byte数组转换为中文字符串
string chineseString = Encoding.UTF8.GetString(bytes);
// 创建包含byte数组的对象
MyClass obj = new MyClass
{
Data = bytes
};
// 将对象序列化为JSON字符串
string json = JsonConvert.SerializeObject(obj);
Console.WriteLine(json);
}
}
在上面的代码中,我们首先创建了一个包含中文的byte数组。然后使用Encoding.UTF8.GetString方法将byte数组转换为中文字符串。接下来,我们创建了一个包含byte数组的对象,并将其序列化为JSON字符串。最后,我们打印出了序列化后的JSON字符串。
输出结果为:
{"Data":"你好世界"}
原文地址: https://www.cveoy.top/t/topic/iR48 著作权归作者所有。请勿转载和采集!