2017-12-04 7 views
-2

aspソリューションで私の.jsonファイルにコンマが付きます。Jsonは末尾のカンマを許可します

{ "key": "Value1", "text": "Add new value" }, 
    { "key": "Value2", "text": "value 2" }, 
    { "key": "Value3", "text": "value 3" }, 
] 

私のコードの変更を検討しながら、それが動作しますので、私のteamleadは、私はについては、この詳細の前に知られており、このコンマはJSONで禁止されていることをしていない)=、「それは動作しません」私に言ったとき、私は非常に驚きました。私たちの質問は、なぜVS2017ソリューションで動作するのでしょうか?おそらくコンパイラはこのコンマで何かを行います。 私は逆シリアル化するために、このコードを使用します。

JsonFormat value = JsonConvert.DeserializeObject<JsonFormat>(jsonText); 
+0

このjson文字列はどのように_read_していますか? – tkausl

+1

多分、[json5](https://github.com/json5/json5)を受け入れますか? – no1xsyzy

答えて

0

JSONはコンマ

後続するいや、いや、それはないことができます。これは有効なJSONではありません。一部のパーサーはにはを許可しますが、一部のパーサーはでものコメントを許可します。

末尾のコンマはJSONでは無効です。

私たちの質問は、なぜVS2017ソリューションで動作するのですか?

いくつかのパーサーは厳密な適合性を強制することなくできるだけ解析しようとします。おそらくこれはそのようなケースの1つです。

+0

ありがとう、それは本当であるようです。私はJsonConvertが "内部"でどのように動作するかを見出そうとしています。 – user2216

関連する問題