读书人

list数组转向json

发布时间: 2013-07-04 11:45:55 作者: rapoo

list数组转为json
类文件为student有姓名,课程,成绩,学号,班级,年级六个字段,一个班级的学生的成绩用list<student>组成,先在想用C#实现把list数组转为json的方法,json格式为
{"学年":"1年级",
"班级":"一班",
"score":[{"姓名":"小王",
"学号":1,
"物理":66,
"化学":100,
"生物":100},
{"姓名":"小明",
"学号":2,
"物理":67,
"化学":90,
"生物":87}]}

不知道怎么转,请大神帮帮忙
[解决办法]
http://stackoverflow.com/questions/3482261/how-to-convert-c-sharp-generic-list-to-json-using-json-net
[解决办法]
要达到楼主的效果 可能这样设计会更好一些 个人意见 仅供参考


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Newtonsoft.Json; //用到的插件 详情百度之 大把的 我就不赘述了

namespace ConsoleApplication2
{
class Program
{

public class Info
{
public Info()
{
Students = new List<Student>(); //初始化学生集合 否则会报NullReferences错
}
public string Grade { get; set; }
public string Class { get; set; }
public List<Student> Students { get; set; }
}

//学生类
public class Student
{
public string Name { get; set; } //姓名
public int Number { get; set; } //学号
public int Physics { get; set; } //物理
public int Chemistry { get; set; } //化学
public int Biology { get; set; } //生物
}

static void Main(string[] args)
{
Info info = new Info();
info.Grade = "1年级";


info.Class = "一班";

Student stuA = new Student();
stuA.Name = "小王";
stuA.Number = 1;
stuA.Physics = 66;
stuA.Chemistry = 100;
stuA.Biology = 100;

Student stuB = new Student();
stuB.Name = "小明";
stuB.Number = 2;
stuB.Physics = 67;
stuB.Chemistry = 90;
stuB.Biology = 87;

info.Students.Add(stuA);
info.Students.Add(stuB);

string result = JsonConvert.SerializeObject(info); //序列化对象
Console.WriteLine(result);
Console.ReadKey();

/*运行结果
{"Grade":"1年级",
"Class":"一班",
"Students":[{"Name":"小王","Number":1,"Physics":66,"Chemistry":100,"Biology":100},
{"Name":"小明","Number":2,"Physics":67,"Chemistry":90,"Biology":87}]}
*/

}
}
}

读书人网 >C#

热点推荐