簡體   English   中英

如何在C ++中將地圖寫為json對象

[英]how to write a map as a json object in c++

我有一個將數據寫入json鍵並與該值相對應。 我的鍵是具有兩個值{int id&char * name}的結構,我的值也是具有三個值{int a,int b,int c}的結構。 我打算將密鑰作為{id:name}放在json中,並且值也由定界符{a:b:c}分隔

從c ++結構到json對象的轉換如何完成? 並再次讀取此創建的json對象作為地圖。

我第二次@Hot Licks是關於花5分鍾學習JSON語法的。 甚至C ++。

假設鍵結構的id = 1234和name ='nandini',它將被序列化為:

"{ 'id': 1234, 'name': 'nandini' }"

與值結構同上,將不會具有您建議的格式,而是類似(對於具有值1、2和3的結構):

"{ 'a': 1, 'b': 2, 'c': 3 }"

序列化很容易。 您可以使用任何喜歡的字符串構建技術,包括sprintf或stringstream的任何變體。 您當然可以使用Json庫。

至於映射部分,像其他語言一樣,Json(或JavaScript)不支持字符串以外的鍵。 如果您使用的庫支持std :: map-請使用它。 否則,您可能會附帶一些對象數組或類似對象。 例如

"[ { key: {...}, val: {...} }, { key: {...}, val: {...} },    ...    ]

然后,在反序列化后,將數組放入映射中。

反序列化將更加棘手,您絕對應該看一下Json庫。 看看JSON.org上的JSON解析器

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM