using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.Serialization.Json;
using System.IO;
using System.Runtime.Serialization;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Person p = new Person();
p.Name = "Guo";
p.Age = 29;
p.Sex = true;
Person p1 = new Person();
p1.Name = "Pan";
p1.Age = 30;
p1.Sex = false;
List<Person> lst = new List<Person>();
lst.Add(p);
lst.Add(p1);
var serializer = new DataContractJsonSerializer(typeof(IList<Person>));
var stream = new MemoryStream();
serializer.WriteObject(stream, lst);
byte[] dataBytes = new byte[stream.Length];
stream.Position = 0;
stream.Read(dataBytes, 0, (int)stream.Length);
string dataString = Encoding.UTF8.GetString(dataBytes);
Console.WriteLine("JSON string is:");
Console.WriteLine(dataString);
Console.WriteLine("**************************************************");
using (MemoryStream outMs = new MemoryStream(Encoding.UTF8.GetBytes(dataString)))
{
// 注意类型,这里不再是List<T> 而是数组
Person[] ps = (Person[])serializer.ReadObject(outMs);
foreach (Person outPerson in ps)
{
Console.WriteLine("Name:" + outPerson.Name);
Console.WriteLine("Age:" + outPerson.Age.ToString());
Console.WriteLine("Sex:" + outPerson.Sex.ToString());
Console.WriteLine();
}
}
}
}
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
public bool Sex { get; set; }
}
}
The way for C# array to JSON
最新推荐文章于 2022-12-16 11:07:26 发布