c# 读取、写入json文件

c# 读取、写入json文件

简介

使用 官方的 json net包进行操作
Newtonsoft.Json

json文件

{
	"animals":{
	"dog":[
		{"name":"Rufus","breed":"labrador","count":1,"twoFeet":false},
		{"name":"Marty","breed":"whippet","count":1,"twoFeet":false}
	],
	"cat":{"name":"Matilda"}
}
}

c# json class

namespace json_li
{
    public class DogItem
    {
        public string name { get; set; }
        public string breed { get; set; }
        public int count { get; set; }
        public string twoFeet { get; set; }
    }

    public class Cat
    {
        public string name { get; set; }
    }

    public class Animals
    {
        public List<DogItem> dog { get; set; }
        public Cat cat { get; set; }
    }

    public class Root
    {
        public Animals animals { get; set; }
    }
}

写入

Cat ru = new Cat();   //生成新的类
            Animals ff = new Animals();  //子节点生成新的类
            ru.name = "daing";   //赋值
            ff.cat = ru;   //类赋值
            string jsondata = JsonConvert.SerializeObject(ff);  //class类转string
            using (StreamWriter sw = new StreamWriter("F://c#//c#_program//json_li//config.json"))  //将string 写入json文件
            {
                sw.WriteLine(jsondata);
            }

读取

string datacache;
using(StreamReader r1 = new StreamReader("F://c#//c#_program//json_li//config.json"))//读取json文件
            {
            string line;    //定义string,读取每一行数据
            while((line = r1.ReadLine())!= null)  //循环将每一行数据拼接为一个完整的字符串
            {
                datacache = datacache + line;  //拼接
            }

            Root rt = JsonConvert.DeserializeObject<Root>(datacache);  //将string转换为class类,从而达到json文件转换的目的
    
  • 0
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值