C# JSON的使用实例和jsonNet程序包的安装

文章介绍了如何在C#项目中创建一个txt文件存储JSON数据,然后利用Newtonsoft.Json的反序列化功能读取并解析这些数据。通过安装Nuget程序包Newtonsoft.Json,创建Skill类映射JSON对象,并在主函数中使用DeserializeObject方法将JSON文本转换为Skill对象数组,从而方便操作和显示数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

建一个txt文档,存放json内容

[
    {"id":2,"name":"净化","damage":0},
    {"id":4,"name":"隐身","damage":10000},
    {"id":6,"name":"疾跑","damage":100},
    {"id":8,"name":"恢复","damage":1}

]

中括号表示数组,花括号表示对象

字符串要用双引号括起来,int类型则不用。

右键项目----管理nuget程序包

搜索json---选择Newtonsoft.json 程序包(就是jsonnet的官网名字),可以看到有个2.8个G的下载次数,即2.8亿次下载数量远超其他json解析工具类程序包,说明jsonnet是当前C#领域最受欢迎的json解析工具。

点击安装即可。

新建Skill类

using System;
using System.Collections.Generic;
using System.Text;

namespace json
{
    class Skill
    {
        //把id 设置为属性去获取
        public int id { get; set; }
        public string name { get; set; }
        public int damage { get; set; } //破坏力


    }
}

上述新建的json.txt 文本

主函数:

using Newtonsoft.Json;
using System;
using System.IO;

namespace json
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");

            Skill[] skillArray = JsonConvert.DeserializeObject<Skill[]>(File.ReadAllText("json.txt"));
            //返回值类型 ---- skill类的数组         要转化的类型<>-----skill类的数组     要转化的内容()-----json.txt的内容    

            foreach (Skill s in skillArray)
            {

                Console.WriteLine(s.id+" ; "+s.name + " ; " +s.damage);
            }
        
        }
    }
}

DeserializeObject:加了De是反序列

JsonConvert是上诉导入的using Newtonsoft.Json; 这个Nuget程序包-----json.NET

运行结果:

注:如果File.ReadAllText("json.txt")读取失败,是因为用的是相对路径,系统找不到,应该这样设置:

右键json.txt---属性

选择:复制到输出目录---选择--如果较新则复制

结语:这样就能读到json的里面的内容了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

本质01

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值