C语言 JSON 解析库 - MJSON使用介绍
2016-12-14 15:44
393 查看
安装:
解压出来,然后直接包含 json.h 就可以了。
下面是几个官方给出的几个例子,由于直接拷贝过来编译没通过,做了一些修改,详见注释部分。
【mjson例一】
【mjson例二】
【mjson例三】
【参考】
http://www.json.org/json-zh.html
http://mjson.sourceforge.net/
解压出来,然后直接包含 json.h 就可以了。
下面是几个官方给出的几个例子,由于直接拷贝过来编译没通过,做了一些修改,详见注释部分。
【mjson例一】
#include <stdio.h> #include <stdlib.h> #include <locale.h> #include "json.h" int main (void) { char *text; json_t *root, *entry, *label, *value; setlocale (LC_ALL, "");//设为系统默认地域信息 // creates the root node root = json_new_object(); // create an entry node entry = json_new_object(); // 第一部分,打印结果: // {"entry":{"name":"Andew","phone":"555 123 456"}} // insert the first label-value pair label = json_new_string("name"); value = json_new_string("Andew"); json_insert_child(label, value); json_insert_child(entry, label); // insert the second label-value pair label = json_new_string("phone"); value = json_new_string("555 123 456"); json_insert_child(label, value); json_insert_child(entry, label); // inserts that object as a value in a label-value pair label = json_new_string("entry"); json_insert_child(label, entry); // inserts that label-value pair into the root object json_insert_child(root, label); // print the result json_tree_to_string(root, &text); printf("%s\n",text); // clean up free(text); json_free_value(&root); //打印第二部分,数组示例, //结果: // ["test1","test2",109] root = json_new_array(); label = json_new_string("test1"); json_insert_child(root,label); value = json_new_string("test2"); json_insert_child(root,value); value = json_new_number("109"); json_insert_child(root,value); json_tree_to_string(root,&text); printf("%s\n",text); // clean up free(text); json_free_value(&root); return EXIT_SUCCESS; }
【mjson例二】
#include <stdio.h> #include <stdlib.h> #include <locale.h> #include "json.h" json_t *new_entry(char *name, char *phone) { json_t *entry, *label, *value; // create an entry node entry = json_new_object(); // insert the first label-value pair label = json_new_string("name"); value = json_new_string("Andew"); json_insert_child(label, value); json_insert_child(entry, label); // insert the second label-value pair label = json_new_string("phone"); value = json_new_string("555 123 456"); json_insert_child(label, value); json_insert_child(entry, label); // inserts that object as a value in a label-value pair label = json_new_string("entry"); json_insert_child(label, entry); return label; } int main (void) { setlocale (LC_ALL, "");//设置为系统默认的地域信息 json_t *root, *subtree; // creates the root node root = json_new_object(); // creates the desired MJSON document subtree subtree = new_entry("Andrew", "555 123 456"); // inserts the subtree into the root object json_insert_child(root, subtree); // print the result char *text; json_tree_to_string(root, &text); printf("%s\n",text); //官方例子中为printf("%ls\n",text);去掉l才能打印出来。。 // clean up free(text); json_free_value(&root); return EXIT_SUCCESS; } 【输出结果】 {"entry":{"name":"Andew","phone":"555 123 456"}}
【mjson例三】
#include <stdio.h> #include <stdlib.h> #include <locale.h> #include "json.h" int main (void) { setlocale (LC_ALL, ""); char *document = "{\"entry\":{\"name\":\"Andew\",\"phone\":\"555 123 456\"}}"; json_t *root; printf("Parsing the document…\n"); root = json_parse_document(document); printf("Printing the document tree…\n"); json_tree_to_string(root, &document); wprintf("%ls\n", document); // clean up json_free_value(&root); return EXIT_SUCCESS; }
【参考】
http://www.json.org/json-zh.html
http://mjson.sourceforge.net/
相关文章推荐
- C语言 JSON 解析库 - MJSON使用介绍
- C语言 JSON 解析库 - MJSON使用介绍
- C语言 JSON 解析库 - MJSON使用介绍
- C语言的JSON 解析库 - MJSON使用介绍
- Json数据格式介绍、使用Android自带类库完成Json生成与解析
- JSON的简单介绍以及C语言的JSON库使用
- Json数据格式介绍、使用Android自带类库完成Json生成与解析
- 使用 CJSON 在C语言中进行 JSON 的创建和解析的实例讲解
- JSON的简单介绍以及C语言的JSON库使用
- C语言创建及解析Json的使用法则
- json格式解析和libjson的用法介绍(关于cjson的使用方法)
- 【Android开发经验】比Gson解析速度快10倍!——Json解析神器Jackson使用介绍
- 适用于Firemonkey的Json解析对象XsuperObject使用方法介绍
- (转)使用 CJSON 在C语言中进行 JSON 的创建和解析的实例讲解
- 全面详解c语言使用cJSON解析JSON字符
- JSON的简单介绍以及C语言的JSON库使用
- Json数据格式介绍、使用Android自带类库完成Json生成与解析
- JSON格式介绍和使用cJSON解析
- 【Android开发经验】Json数据格式介绍、使用Android自带类库完成Json生成与解析
- 使用 CJSON 在C语言中进行 JSON 的创建和解析的实例讲解