在使用json是 需要添加 json庫才能使用。
1、操作步驟都在註釋中
void cloud_get_json_array()
{
cJSON *vpnList;
cJSON *obj;
cJSON *root;
root = cJSON_CreateObject();
// 向根節點添加一個 optype的Object,因爲是整形,所以是 AddNumber...()
// 如果是字符串 則是,AddString..()
// 如果不組建數組格式的json,就按照這個格式依次添加即可
cJSON_AddNumberToObject(root, "optType", 22);
// json數組長度是3
int vpn_num = 3;
// 創建數組vpnList,並將其添加到根節點,這裏可以理解爲vpnList就是個[] 而已
cJSON_AddItemToObject(root, "vpnList", vpnList = cJSON_CreateArray());
for (int i = 0; i < vpn_num; i++) {
// 向數組中添加對象obj,把obj當成一個新的根節點
// 每一次循環就會創建一個obj,放到數組中。其實就是數組下角標[0]、[1]、[2]
// 每一個[i],都包含了 destIp connStatus upflow downflow 關鍵字
cJSON_AddItemToArray(vpnList, obj = cJSON_CreateObject());
cJSON_AddStringToObject(obj, "destIp", "127.1.1.111");
cJSON_AddNumberToObject(obj, "connStatus", i+250);
cJSON_AddNumberToObject(obj, "upflow", 192168250250);
cJSON_AddNumberToObject(obj, "downflow", 1270001111);
}
return;
}
運行的結果應該是這樣的:
解析末尾是個人相關的信息就給塗鴉了,諒解!
左邊是輸出,右邊是在線驗證