这个东西咋整呢?使用C#自带的Json,而不是用第三方的!
我看了关于Json的资料,发现很多资料使用的都是第三方的工具实现,但是我只想使用微软自带的Json工具来做!
以下的代码是我从某网页中读取出来的,A项的数据有很多,大概有几千条,我只列出来几个,如果我现在想输出如下格式数据:
A的平均数
B的平均数
C的平均数
D的值
DataTime的值
C#怎么写呢?
{
"details": [
{
"A": [
0,
113237,
5790,
2128
],
"DataTime": 1389542400000,
"B": [
0,
289277,
61086
],
"C": [
26567,
27263
],
"D": false
}
{
"details": [
{
"A": [
0,
113237,
5790,
2128
],
"DataTime": 1389542400000,
"B": [
0,
289277,
61086
],
"C": [
26567,
27263
],
"D": false
},
{
"A": [
0,
11323437,
5720,
2128
],
"DataTime": 1389542400000,
"B": [
0,
289277,
61086
],
"C": [
26567,
27263
],
"D": true
},
]
}
using System;
using System.IO;
using System.Linq;
using System.Runtime.Serialization.Json;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
var sw = new DataContractJsonSerializer(typeof(TB));
var str = File.ReadAllText("data.txt");
var obj = (TB)sw.ReadObject(new MemoryStream(Encoding.Unicode.GetBytes(str)));
var n = 0;
foreach (var x in obj.details)
{
Console.WriteLine("第{0}个对象:", ++n);
Console.WriteLine("A的平均数={0}", x.A.Average());
Console.WriteLine("D的值={0}", x.D);
Console.WriteLine();
}
Console.ReadKey();
}
}
public class TB
{
public TA[] details { get; set; }
}
public class TA
{
public int[] A { get; set; }
public long DateTime { get; set; }
public int[] B { get; set; }
public int[] C { get; set; }
public bool D { get; set; }
}
}