为了账号安全,请及时绑定邮箱和手机立即绑定

添加JSON Data到已经存在的JSON文件中

标签:
Html/CSS


那需要怎样把新添加的json数据附加至已经存在的数据中去?本篇Insus.NET就是想实现此功能。

想法是先读取json文件的数据转换为数据集存放在内存中,新添加的数据再附加上去,然后再把内存的数据集序列化保存为json文件即可。

上面代码示例中,有3大部分,第一部分是读取文件中原有数据:

if (System.IO.File.Exists(existFilePhysicalPath))            {                using (System.IO.StreamReader sr = new System.IO.StreamReader(existFilePhysicalPath))                {                    JsonTextReader jtr = new JsonTextReader(sr);                    JsonSerializer se = new JsonSerializer();                    object obj = se.Deserialize(jtr, typeof(List<Order>));                    orders = (List<Order>)obj;                }            }

View Code


其实这部分,简单一句代码也可以:

orders = JsonConvert.DeserializeObject<List<Order>>(System.IO.File.ReadAllText(existFilePhysicalPath));

View Code


第二部分是将内存中的List<Order>数据序列化之后,存为json文件:

 using (FileStream fs = File.Open(newFilePhysicalPath, FileMode.CreateNew))            using (StreamWriter sw = new StreamWriter(fs))            using (JsonWriter jw = new JsonTextWriter(sw))            {                jw.Formatting = Formatting.Indented;                JsonSerializer serializer = new JsonSerializer();                serializer.Serialize(jw, orders);            }

View Code


第三部分是把新创建的文件重命名为旧文件名:

if (System.IO.File.Exists(existFilePhysicalPath))            {                File.Delete(existFilePhysicalPath);            }            if (System.IO.File.Exists(newFilePhysicalPath))            {                System.IO.File.Move(newFilePhysicalPath, existFilePhysicalPath);            }

View Code


在Orders目录中,新创建一个html网页SaveJsonToExistFile.html:

 

上面收集合的jQuery代码,可以参考下面:



 

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消