2016-08-01 13 views
-1

私はC#で次のJSONを繰り返し処理し、値をリストにプッシュしようとしていますが、その構文がどのようになるのか不思議です。私はJSONの構文解析に取り掛かりつつあるので、どうやってそれを行うのだろうかと思っています。答えのためのJSONは以下の通りです:JSONをどのように反復処理して値をリストにプッシュしますか?

var retval = { 
"2016": 4000000, 
"2017": 400000, 
"2018": 8324, 
"2019": 4000000, 
"2020": 4000000, 
"2021": 400000, 
"2022": 8324, 
"2023": 4000000, 
"2024": 4000000, 
"2025": 400000, 
"2026": 8324, 
"2027": 4000000, 
"2028": 4000000, 
"2029": 400000, 
"2030": 8324, 
"2031": 4000000, 
"2032": 4000000, 
"2033": 400000, 
"2034": 8324, 
"2035": 4000000, 
"2036": 4000000, 
"2037": 400000, 
"2038": 8324, 
"2039": 4000000, 
"2040": 4000000, 
"2041": 400000, 
"2042": 8324, 
"2043": 4000000, 
"2044": 4000000, 
"2045": 400000, 
"2046": 8324, 
"2047": 4000000, 
"2048": 4000000, 
"2049": 400000, 
"2050": 8324, 
"2051": 4000000, 
"2052": 4000000, 
"2053": 400000, 
"2054": 8324, 
"2055": 4000000, 
"2056": 4000000, 
"2057": 400000, 
"2058": 8324, 
"2059": 4000000, 
"2060": 4000000, 
"2061": 400000, 
"2062": 8324, 
"2063": 4000000, 
"2064": 4000000, 
"2065": 400000, 
"2066": 8324, 
"2067": 4000000, 
"2068": 4000000, 
"2069": 400000, 
"2070": 8324, 
"2071": 4000000, 
"2072": 4000000, 
"2073": 400000, 
"2074": 8324, 
"2075": 4000000, 
"2076": 4000000, 
"2077": 400000, 
"2078": 8324, 
"2079": 4000000, 
"2080": 4000000, 
"2081": 400000, 
"2082": 8324, 
"2083": 4000000, 
"2084": 4000000, 
"2085": 400000, 
"2086": 8324, 
"2087": 4000000, 
"2088": 4000000, 
"2089": 400000, 
"2090": 8324, 
"2091": 4000000, 
"2092": 4000000, 
"2093": 400000, 
"2094": 8324, 
"2095": 4000000, 
}; 
+5

の可能性のある重複した[JSONマッピングおよびC#でシリアライズ](http://stackoverflow.com/questions/17986193/json-mapping- and-serializing-in-c-sharp) –

+0

はい、Aleksandarがリンクしている回答は、それほど多くあるはずです。あなたが望むならあなた自身のオブジェクトを作るのではなく、辞書にエリアライズしてください。 –

答えて

0

まず、投稿した内容はjsonではありません。あなたは、あなたが投稿JSONは単一のオブジェクトではなく、リストで

"{ \"2016\": 4000000, \"2017\": 400000, ... 

のように、すべての「年代をエスケープする必要がありますが、これらは単に/値のペアに名前を付けているので、あなたはこの

Dictionary<string, int> values = JsonConvert.DeserializeObject<Dictionary<string, int>>(json); 
のようにそれをデシリアライズすることができます

あなたは、あなたがそれでやりたいことができ辞書にそれを持っていたら。

関連する問題