003_JSON操作示例.csproj

加载文件-解析-序列化-写文件

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _003_JSON操作示例
{
    class Program
    {
        static void Main(string[] args)
        {
            //文本文件转成JSON对象的示例:
            string s = System.IO.File.ReadAllText("TextFile1.json");
            player py = LitJson.JsonMapper.ToObject<player>(s);
            Console.WriteLine(py.Message);
            Console.WriteLine(py.Skills[0].SkillName);
            int level;
            level = py.Skills[1].SkillLevel;
            Console.WriteLine(level);
            

            //JSON对象转成字符串示例:
            player py2 = new player();
            py2.Id = 2;
            py2.Name = "玩家2";
            py2.Message = "天然工作室";
            List<Skill> list2 = new List<Skill>();
            //玩家2技能1
            Skill skill2_1 = new Skill();
            skill2_1.SkillID = 1;
            skill2_1.SkillName = "十八罗汉拳";
            skill2_1.SkillLevel = 7;
            //玩家2技能2
            Skill skill2_2 = new Skill();
            skill2_2.SkillID = 2;
            skill2_2.SkillName = "咏春拳";
            skill2_2.SkillLevel = 7;
            //添加到对象
            list2.Add(skill2_1);
            list2.Add(skill2_2);
            py2.Skills = list2;
            //对象转字符串
            string s2 = LitJson.JsonMapper.ToJson(py2);
            Console.WriteLine(s2);
            //字符串写入覆盖文件
            System.IO.File.WriteAllText("玩家2.json",s2);

            Console.ReadKey();
        }

    }
}

玩家类和技能类

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _003_JSON操作示例
{
    class player
    {
        public string Message { get; set; }
        public int Id { get; set; }
        public string Name { get; set; }

        public List<Skill> Skills { get; set; }

        public override string ToString()
        {
            string s = "";
            s += Message + " ";
            s += Id + " ";
            s += Name + "\n";
            foreach (Skill skill in Skills)
            {
                s += skill.SkillID + " ";
                s += skill.SkillName + " ";
                s += skill.SkillLevel + "\n";
            }
            return s;
        }
    }

    class Skill
    {
        public int SkillID { get; set; }
        public string SkillName { get; set; }
        public int SkillLevel { get; set; }
    }


}

JSON文件

{
  "Message": "天然工作室JSON数据文件模板",
  "Id": 1,
  "Name":"palyer",
  "Skills": [
    {
      "SkillID": 1,
      "SkillName": "独孤九剑",
      "SkillLevel": 6
    },
    {
      "SkillID": 2,
      "SkillName": "逐日箭法",
      "SkillLevel": 6
    },
    {
      "SkillID": 3,
      "SkillName": "法圣火墙",
      "SkillLevel": 6
    }
  ]
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值