C# 读写json文件
cpp用时间长了,换换新口味,写写C#。这是使用C#读写json文件的笔记。
创建新工程:
添加NuGet包:
下载安装:
程序包安装完成:
拖两个按钮出来:
重要的:
using System.IO;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
添加Hunter类:
public partial class Hunter{public string system;public List<string> arrCharacter = new List<string>();}
write:
//writeprivate void button1_Click(object sender, EventArgs e){try{// 创建对象 JObject jsObj = new JObject();jsObj.Add("career", "hunter");JObject jsSystem = new JObject();jsSystem.Add("name", "name");jsSystem.Add("count", 999);jsSystem.Add("unique", false);JArray jsArraySys0 = new JArray();JObject jsSys1 = new JObject();jsSys1.Add("system_name", "强化系");JArray jsArraySys1 = new JArray();jsArraySys1.Add(new JValue("Gon"));jsArraySys1.Add(new JValue("雷欧力"));jsArraySys1.Add(new JValue("窝金"));jsSys1.Add("character", jsArraySys1);jsArraySys0.Add(jsSys1);JObject jsSys2 = new JObject();jsSys2.Add("system_name", "变化系");JArray jsArraySys2 = new JArray();jsArraySys2.Add(new JValue("Killua"));jsArraySys2.Add(new JValue("西索"));jsSys2.Add("character", jsArraySys2);jsArraySys0.Add(jsSys2);JObject jsSys3 = new JObject();jsSys3.Add("system_name", "操作系");JArray jsArraySys3 = new JArray();jsArraySys3.Add(new JValue("侠客"));jsArraySys3.Add(new JValue("半藏"));jsSys3.Add("character", jsArraySys3);jsArraySys0.Add(jsSys3);JObject jsSys4 = new JObject();jsSys4.Add("system_name", "具现化系");JArray jsArraySys4 = new JArray();jsArraySys4.Add(new JValue("Kula"));jsArraySys4.Add(new JValue("库哔"));jsArraySys4.Add(new JValue("小嘀"));jsSys4.Add("character", jsArraySys4);jsArraySys0.Add(jsSys4);JObject jsSys5 = new JObject();jsSys5.Add("system_name", "放出系");JArray jsArraySys5 = new JArray();jsArraySys5.Add(new JValue("富兰克林"));jsArraySys5.Add(new JValue("旋律"));jsArraySys5.Add(new JValue("爆弹魔"));jsSys5.Add("character", jsArraySys5);jsArraySys0.Add(jsSys5);JObject jsSys6 = new JObject();jsSys6.Add("system_name", "特质系");JArray jsArraySys6 = new JArray();jsArraySys6.Add(new JValue("Kula-火红眼"));jsArraySys6.Add(new JValue("库洛洛"));jsArraySys6.Add(new JValue("派克诺妲"));jsSys6.Add("character", jsArraySys6);jsArraySys0.Add(jsSys6);jsSystem.Add("system", jsArraySys0);jsObj.Add("system", jsSystem);string strSrc = Convert.ToString(jsObj);//将json装换为stringFile.WriteAllText(Directory.GetCurrentDirectory() + "\\test.json", strSrc, System.Text.Encoding.UTF8);//将内容写进json文件}catch (Exception ex){}}
写成功,打开看看:
read:
//readprivate void button2_Click(object sender, EventArgs e){string folder = Directory.GetCurrentDirectory(); //获取应用程序的当前工作目录。 string path = folder + "\\test.json";StreamReader file = File.OpenText(path);JsonTextReader reader = new JsonTextReader(file);JObject jsonObject = (JObject)JToken.ReadFrom(reader);string career = jsonObject["career"].ToString();int nCount = int.Parse(jsonObject["system"]["count"].ToString());bool unique = bool.Parse(jsonObject["system"]["unique"].ToString());if(m_arrHunter == null){m_arrHunter = new List<Hunter>();}m_arrHunter.Clear();int nSize = jsonObject["system"]["system"].Count();for (int i = 0;i<nSize;i++){Hunter hunter = new Hunter();hunter.system = jsonObject["system"]["system"][i]["system_name"].ToString();int nSize2 = jsonObject["system"]["system"][i]["character"].Count();for(int j = 0;j<nSize2;j++){hunter.arrCharacter.Add(jsonObject["system"]["system"][i]["character"][j].ToString());}m_arrHunter.Add(hunter);}for(int i = 0;i<m_arrHunter.Count;i++){Console.Write(m_arrHunter[i].system+":\n");int nSize2 = jsonObject["system"]["system"][i]["character"].Count();for (int j = 0; j < nSize2; j++){Console.Write(jsonObject["system"]["system"][i]["character"][j].ToString() + "\t");}Console.WriteLine("\n");}int xxx = 12;}
表结构:
打印出来看看:
C# 读写json文件相关推荐
- java如何读写json文件
java如何读写json文件 在实际项目开发中,有时会遇到一些全局的配置缓存,最好的做法是配置redis数据库作为数据缓存,而当未有配置redis服务器时,读取静态资源文件(如xml.json等)也是 ...
- python 读写json文件
1. python中和json读写相关的主要是json模块的以下四个函数: dumps() 将一个python对象编码为json对象 loads() 讲一个json对象解析为python对象 dump ...
- python json loads_python 读写json文件(dump, load),以及对json格式的数据处理(dumps, loads)...
JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. 1.json.dumps()和json.loads()是json ...
- python json.load_python 读写json文件(dump, load),以及对json格式的数据处理(dumps, loads)...
原博文 2018-04-22 09:11 − JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. 1.json.du ...
- python 读写 json文件
json的优势: 1. 数据体积方面. JSON相对于XML来讲,数据的体积小,传递的速度更快些. 2. 传输速度方面. JSON的速度要远远快于XML 3. 数据格式 数据格式比较简单, 易于读写, ...
- C++读写Json文件
Json库下载 Json文件是一种轻量级的数据交换格式,具体不在这介绍.对Json文件进行读写首先需要下载Json库.我使用的是rapidjson库. rapidjson库是腾讯的实现,网址在这htt ...
- python json文件_python读写json文件的简单实现
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族 ...
- python读写json文件
2019独角兽企业重金招聘Python工程师标准>>> 创建json文件: { "fontFamily": "微软雅黑", & ...
- json list格式_来来来,一文让你读懂Cocos Creator如何读写JSON文件
前言 在游戏开发过程中,读取配置文件是必不可少的,而使用JSON做配置文件又比较常见,本文重点给大家讲述如何在Cocos Creator开发中读取和解析JSON数据文件以及如何写JSON文件. 一.J ...
- Python读写json文件的简单实现
转载自https://blog.csdn.net/vitaminc4/article/details/77985175 介绍 JSON(JavaScript Object Notation) 是一种轻 ...
最新文章
- [DevOps] 认识一下
- 服务器标记“asp:ScriptManager”不明确。
- Educational Codeforces Round 11C. Hard Process two pointer
- 【学习笔记】2019-Learning_UVOS_Through_Visual_Attention
- ORA-07445 [kxsxsi()+450] [SIGSEGV]
- php 写 mysql 事件_PHP日歷,包含來自MySQL數據庫的重復事件
- linux win10 时间同步服务器,windows和linux下服务器时间如何校正?
- Win10专业版系统PyCharm专业版使用WSL(ubuntu20.04 LTS)配置Docker解释器配置环境详细教程
- 5G 爆发前夕,这些科技巨头们聚在一起“密谋”了些什么?!
- Codeforces Round #518 (Div. 2): D. Array Without Local Maximums(DP)
- phpmyadmin出现缺少mysqli扩展问题
- TestDriven.NET 2.0——单元测试的好助手(转)
- 解决U盘插入我的电脑中不显示
- echarts地图省市坐标
- 搞定检索式对话系统的候选response检索--使用pysolr调用Solr
- 秀才还是野兽(规划还是探索)
- 自媒体写好文案的技巧,这5个网站请收藏好!你想要的都在!
- Android Studio Lint 工具看完这一篇还不够
- WT588F02KD-24SS语音芯片(数码管显示驱动ic)在多功能烧水壶的应用设计方案
- python——用Turtle画画写名字