本文目錄一覽:
JSON解析器json-c
JSON-C實現了一個引用計數對象模型,它允許您輕鬆地使用C語言來構建JSON對象,將它們輸出為JSON格式的字符串,並將JSON格式字符串解析回JSON對象的C語言表示形式。它的目標是符合 RFC 7159 標準。
使用automake的編譯過程如下:
使用cmake編譯的過程如下:
cmake可選的幾個編譯選項為:
要使用json-c,最簡單的方式是包含json.h頭文件即可,或者最好是下列更具體的頭文件之一:
詳細且全面的API介紹文檔:
JSON-C支持的JSON對象類型有7種:
下面系列函數用於創建一個JSON對象:
給JSON對象增加字段(不會增加引用計數):
刪除json對象的指定字段,被刪除的對象引用計數減去1,如果這個val沒有更多的所有者,這個key對應的val被free,否則這個val的引用保存在內存中:
增加一個元素到json數組的末尾,obj引用計數不會增加,增加字段的方式更加緊湊;如果需要獲取val的引用,需要用json_object_get()來傳遞該對象:
替換json數組中的值:
json數組的排序,這裡需要自己寫排序函數:
獲取json對象的長度,依據字段的數目:
獲取json對象的哈希表:
獲取對象的數組列表:
獲取json的類型:
獲取json數組對象的長度:
獲取json對象的bool值,int和double對象是0轉換為FALSE,否則返回TRUE;非0長度的字符串返回TRUE;其他對象非空的話,返回TRUE:
獲取json對象的長度,如果參數不是string類型的json,返回0:
按照索引獲取json數組的對象:
轉換json對象到c字符串格式:
獲取JSON中指定類型的數值:
將字符串轉換為json對象:
以下兩個函數配合使用,前者獲取該對象指針的所有權,引用計數加1,如果對象已經被釋放,返回NULL;後者引用計數減1,如果對象已經被釋放,返回1:
類型判斷:
json_util.h提供了有關文件讀寫操作的函數,這個文件的內容是json格式的:
js class對象 怎麼轉換成json
普通的數組格式是:[‘a’,’b’,’c’]
JSON的格式是:{‘1′:’a’,’2′:’b’,’3′:’c’}
所以把數組循環一下就可以了;
var a = [‘a’,’b’,’c’];
var json = {};
for(var i=0;ia.length;i++)
{
json[i]=a[i];
}
JSON.stringify(json); //結果:{‘1′:’a’,’2′:’b’,’3′:’c’}
用C#語言將json格式數據轉成json對象
把你的json字符串中的所有的 ” 替換為 “”
比如我要在c#中聲明一個字符串
{
“a”:”1″
}
寫法有兩種
1
string json=”{\r\n\”a\”:\”1\”\r\n}」; //因為字符串需要用”” 來定義 所以其中的”要用\”來轉義,而換行則是 \r\n
2
string json=@”{
“”a””:””1″”
}”;
//使用@ 方式定義字符串,這種方式關閉了 \x 這種轉義序列, 所以其中的” 要用另外一個”來轉義 於是就變成了 “”
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/256596.html