读取Json,并替换json中的指定字符
string jsonfile = @"E:\history.json";//JSON文件路径
using (System.IO.FileStream file = new FileStream(jsonfile, FileMode.Open, FileAccess.ReadWrite))
{
var buffer = new byte[file.Length];//获取用字节表示的流长度
file.Read(buffer, , buffer.Length);//0 字节 1 偏移量 2读取的字节长度
var jsonTxt = Encoding.UTF8.GetString(buffer);
JObject o = JObject.Parse(jsonTxt);//获取json对象
JToken jt = o["Chapter"];//获取Json中的指定字符
for (int i = ; i < jt.Count(); i++)//特殊需求 不做理会
{
for (int j = ; j < jt[i]["article"].Count(); j++)
{
var arttitle = Convert.ToString(jt[i]["article"][j]["arttitle"]);
int num = arttitle.LastIndexOf(" ");
if (num != -)
{
arttitle = arttitle.Substring(num + );
}
jt[i]["article"][j]["path"] = GetHtmlPath(arttitle, (i + ) + "-" + (j + ));
}
}
var result = o.ToString();
var newBuffer = Encoding.UTF8.GetBytes(result);
var index = file.Seek(, SeekOrigin.Begin);
file.Write(newBuffer, , newBuffer.Count());
}
示例Json

读取Json,并替换json中的指定字符的更多相关文章
- js replace(a,b)之替换字符串中所有指定字符的方法
var str = 'abcadeacf'; var str1 = str.replace('a', 'o'); alert(str1); // 打印结果: obcadeacf var str2 = ...
- 使用POI替换word中的特定字符/文字改进版
package com.xfzx.test.POI.main; import java.io.File; import java.io.FileInputStream; import java.io. ...
- JavaScript替换字符串中最后一个字符
1.问题背景 在一个输入框中,限制字符串长度为12位.利用键盘输入一个数字,会将字符串中最后一位替换,比方:111111111111.再输入一个3,会显示111111111113 2.详细实现 < ...
- js替换字符串中所有指定的字符
第一次发现JavaScript中replace() 方法如果直接用str.replace("-","!") 只会替换第一个匹配的字符. 而str.replac ...
- python 提取字符串中的指定字符 正则表达式
例1: 字符串: '湖南省长沙市岳麓区麓山南路麓山门' 提取:湖南,长沙 在不用正则表达式的情况下: address = '湖南省长沙市岳麓区麓山南路麓山门' address1 = address.s ...
- oracle去掉字符串中所有指定字符
Select Replace(字段名,'指定字符','替换字符') From 表名 --例: select replace('de.5d','.','') from dual --显示结果:de5d ...
- C++ 删除一个字符串中的指定字符
Q:一个数字是以xxx,yyy,zzz的字符串形式存储的,将逗号消去并转化为整数输出 方法一:char数组,即定义时s1定义为 char s1[20]的形式: //删除输入字符串中的逗号,并构建新串 ...
- 替换jar中的指定文件
替换jar 包下面的class 文件,很多人会想到直接用winrar 打开替换,在一般的情况下, 是可行的,但是如果说这个jar 的代码经过混淆后,会有大小写不同,文件名是相同的,在windos ...
- sql 替换字段中的部分字符,替换指定字符
把列中凡是有2011的全部修改成2014,如 lieming 里的201101131431改成201401131431,写法: update tab set lieming = replace(l ...
随机推荐
- 【玩转开源】BananaPi R2 —— 第三篇 基于Openwrt开发一个简单的路由器
上一篇讲解了R2的网口配置,这一篇我们以BananaPi R2为例子来实现一个简单的路由器:那么一个简单的路由器应该具备什么样的功能呢?最简单的说就是wan+lan+ap这三个功能. 首先wan+la ...
- SQL Server 创建索引
索引的简介: 索引分为聚集索引和非聚集索引,数据库中的索引类似于一本书的目录,在一本书中通过目录可以快速找到你想要的信息,而不需要读完全书. 索引主要目的是提高了SQL Server系统的性能,加快数 ...
- JavaScript模块化CommonJS/AMD/CMD/UMD/ES6Module的区别
目录 JS-模块化进程 原始的开发方式 CommonJS && node.js AMD && Require.js CMD && Sea.js UMD ...
- Docker使用docker-compose.yml构建Asp.Net Core和Mysql镜像并与Mysql数据库通信
version: '3' services: mycore01: build: context: . container_name: 'mycore01' #自定义容器名 dockerfile ...
- C# 通过 Quartz .NET 实现 schedule job 的处理
在实际项目的开发过程中,会有这样的功能需求:要求创建一些Job定时触发运行,比如进行一些数据的同步. 那么在 .Net Framework 中如何实现这个Timer Job的功能呢? 这里所讲的是借助 ...
- python 将png图片格式转换生成gif动画
先看知乎上面的一个连接 用Python写过哪些[脑洞大开]的小工具? https://www.zhihu.com/question/33646570/answer/157806339 这个哥们通过爬气 ...
- python书籍推荐:Head First Python(中文版)
所属网站分类: 资源下载 > python电子书 作者:熊猫烧香 链接:http://www.pythonheidong.com/blog/article/64/ 来源:python黑洞网,专注 ...
- linux学习之命令的排列、替换和别名--2019-04-23
1.命令的排列 1)使用“;” 使用“;”命令时,不管命令1是否出错,接下来都执行命令2. 2)使用“&&” 使用“&&”命令时,只有命令1正确运行,接下来才会执行命令 ...
- MySQL server has gone away错误的解决办法
在我们使用mysql导入大文件sql时可能会报MySQL server has gone away错误,该问题是max_allowed_packet配置的默认值设置太小,只需要相应调大该项的值之后再次 ...
- Egret的按钮事件处理
首先要在exml内要设置有对应按钮的ID 2,编写TypeScript脚本: public mybutton:eui.Button; 函数内部:this.mybutton.addEventListen ...