[
{
"name": "ATVI",
"dailyClosePrice": [
{
"3/15/2017": 210.08,
"4/6/2017": 235.08,
"4/21/2017": 243.61,
"2/16/2017": 205.43
}
]
},
{
"name": "ADBE",
"dailyClosePrice": [
{
"3/15/2017": 241.96,
"4/6/2017": 270.22,
"4/21/2017": 281.22,
"2/16/2017": 225.26
}
]
}
]
實際的文件比2更多的人,但你可以看到有兩個 主要目的在這裏。 我在分析鍵值對(例如"3/15/2017": 210.08
)時遇到問題。
我需要一類離開這裏,我想一個例子類將有
class Stock
{
public string Name{get;set;}
public List<Entry> Prices{get;set;}
}
class Entry
{
public string Date{get;set;}
public double Price{get;set;}
}
所以我想將文件解析成一個 列表
我想我可以使用一個StreamReader並使用Seek方法找到 一個「:」,但是我遇到的麻煩是如何才能夠只讀「ATVI」。例如,一旦我獲得「ATVI」,我將該字符串設置爲股票中的名稱,然後可以搜索「{」並閱讀「2017/3/15」,並將其設置爲條目中的日期,然後尋找「 :「並在雙讀等。
如果我這樣做,我不知道如何閱讀流的選擇元素,在C#中。在C#中,我主要閱讀的是具有相同間距的字符串,通常我會使用C來處理更復雜的事情,但是我真的希望使用C#而不是C來完成此操作。
我不在乎我需要使用什麼方法,我只是想在文件中讀取。
如果我有類似下面,我只想用NewtonSoft
[
{
"name": "ATVI",
"dailyClosePrice": [
{"Date":"3/15/2017", "price":210.08},
{"Date":"3/15/2017", "price": 210.08},
{"Date":"4/6/2017", "price": 235.08},
{"Date":"4/21/2017", "price": 243.61}
]
},
{
"name": "ADBE",
"dailyClosePrice": [
{"Date":"3/15/2017", "price":210.08},
{"Date":"3/15/2017", "price": 210.08},
{"Date":"4/6/2017", "price": 235.08},
{"Date":"4/21/2017", "price": 243.61}
]
}
]
你爲什麼要這樣手動,而不是這樣做只是使用專門爲目的而設計的庫,並有可能做它遠遠比你更好(或I)可以嗎? – DavidG
我使用NewtonSoft作爲我的其他JSON文件,但是這個有一個奇怪的格式 –
奇怪的是什麼? – DavidG