开源项目提供的一个读取示例

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text; namespace Newtonsoft.Json.Tests.Documentation.Samples.Json
{
public class ReadJsonWithJsonTextReader
{
public void Example()
{
#region Usage
string json = @"{
'CPU': 'Intel',
'PSU': '500W',
'Drives': [
'DVD read/writer'
/*(broken)*/,
'500 gigabyte hard drive',
'200 gigabype hard drive'
]
}"; JsonTextReader reader = new JsonTextReader(new StringReader(json));
while (reader.Read())
{
if (reader.Value != null)
Console.WriteLine("Token: {0}, Value: {1}", reader.TokenType, reader.Value);
else
Console.WriteLine("Token: {0}", reader.TokenType);
} // Token: StartObject
// Token: PropertyName, Value: CPU
// Token: String, Value: Intel
// Token: PropertyName, Value: PSU
// Token: String, Value: 500W
// Token: PropertyName, Value: Drives
// Token: StartArray
// Token: String, Value: DVD read/writer
// Token: Comment, Value: (broken)
// Token: String, Value: 500 gigabyte hard drive
// Token: String, Value: 200 gigabype hard drive
// Token: EndArray
// Token: EndObject
#endregion
}
}
}

json 读取

//json读取示例
public void jsonreadsample()
{
string jsonstr = "{\"Name\" : \"Jack\", \"Age\" : 34, \"Colleagues\" : [{\"Name\" : \"Tom\" , \"Age\":44},{\"Name\" : \"Abel\",\"Age\":29}] }";
//将json转换为JObject
JObject jo = JObject.Parse(jsonstr);
JToken ageToken=jo["Name"]; //获取该员工的姓名
Console.WriteLine(ageToken.ToString()); //获取该员工同事所有姓名(读取json数组)
var names=from staff in jo["Colleagues"].Children() select (string)staff["Name"];
foreach (var name in names)
Console.WriteLine(name);
}

url编码

//URL encode
public String UrlEncoded(string str)
{
StringBuilder sb = new StringBuilder();
byte[] byStr = System.Text.Encoding.UTF8.GetBytes(str); //默认是System.Text.Encoding.Default.GetBytes(str)
for (int i = ; i < byStr.Length; i++)
{
sb.Append(@"%" + Convert.ToString(byStr[i], ).ToUpper());
} return (sb.ToString());
}

最新文章

  1. Dubbo应用与异常记录
  2. objectARX获取当前图层所有文字样式
  3. C++中的构造函数,拷贝构造函数和赋值运算
  4. C++函数重载遇到了函数默认参数情况
  5. WCF 接收、发送数据的大小及时间的设置
  6. 用DELPHI的RTTI实现数据集的简单对象化
  7. 手动安装英特尔&#174; 凌动™ Android* x86 模拟器映像
  8. LeetCode OJ 33. Search in Rotated Sorted Array
  9. Centos7 编译安装 Nginx PHP Mariadb Memcache扩展 ZendOpcache扩展 (实测 笔记 Centos 7.0 + Mariadb 10.1.9 + Nginx 1.9.9 + PHP 5.5.30)
  10. 使用PHP实现RSA算法的加密和解密
  11. Jmeter如何把响应数据的结果保存到本地的一个文件
  12. 22.1 、react生命周期(一)
  13. sql server导出大批量数据
  14. 自学Zabbix2.4-web页面配置zabbix
  15. Awesome Torch
  16. svn conflict问题解决办法
  17. error LNK2001: 无法解析的外部符号 _H5T_NATIVE_DOUBLE_g
  18. PDO添加数据的预处理语句
  19. .Net 初步学习笔记之三---变量
  20. [翻译] BezierString

热门文章

  1. 突然萌发关于 redis 的想法(2)
  2. Elasticsearch 使用:创建、插入、查询、更新、删除
  3. luogu 5505 [JSOI2011]分特产 广义容斥
  4. C/C++ -- 判断字符串中存在中文
  5. 分治 FFT学习笔记
  6. IDEA中获取资源路径问题
  7. @babel/preset-env useBuiltIns 说明
  8. linux的free命令详解-内存是拿来用的不是拿来看的
  9. 20165223《网络对抗技术》Exp6 信息搜集与漏洞扫描
  10. 【转】Linux下软件安装的几种方式