c字符串转json
时间: 2023-07-19 07:06:02 浏览: 73
你可以使用第三方库,如 cJSON 或者 json-c,来将一个 C 字符串转换为 JSON 格式。以下是使用 cJSON 库的示例代码:
```c
#include <stdio.h>
#include <cJSON.h>
int main() {
char* jsonString = "{\"name\":\"Alice\",\"age\":25}";
cJSON* root = cJSON_Parse(jsonString);
if (root == NULL) {
printf("Error parsing JSON string.\n");
return 1;
}
cJSON* name = cJSON_GetObjectItemCaseSensitive(root, "name");
cJSON* age = cJSON_GetObjectItemCaseSensitive(root, "age");
printf("Name: %s, Age: %d\n", name->valuestring, age->valueint);
cJSON_Delete(root);
return 0;
}
```
这个例子中,我们首先定义了一个 C 字符串 `jsonString`,它包含了一个简单的 JSON 对象。然后我们使用 cJSON 库中的 `cJSON_Parse()` 函数将这个字符串解析为一个 cJSON 对象。如果解析出错,`cJSON_Parse()` 函数会返回 `NULL`。
接下来,我们使用 cJSON 库中的 `cJSON_GetObjectItemCaseSensitive()` 函数获取 JSON 对象中的每一个属性,然后输出它们的值。
最后,我们使用 `cJSON_Delete()` 函数释放 cJSON 对象占用的内存。
阅读全文