欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

c 分割json

錢瀠龍1年前9瀏覽0評論

C語言分割JSON數據

在處理后臺返回的JSON數據時,我們需要將JSON數據按照自己的需要進行分割。這里介紹一種C語言分割JSON數據的方法。

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define MAX 100
int split_json(char* json_str, char* key, char* value) {
char* pos;
pos = strstr(json_str, key); // 查找關鍵字
if (pos == NULL) {
return -1; // 未找到關鍵字
}
pos += strlen(key) + 2; // 關鍵字后面的冒號和空格
char* end_pos;
end_pos = strstr(pos, ","); // 查找逗號
if (end_pos == NULL) {
end_pos = strstr(pos, "}"); // 查找結束的大括號
}
if (end_pos == NULL) {
return -1; // 未找到分隔符
}
int len = end_pos - pos;
strncpy(value, pos, len); // 復制值
value[len] = '\0'; // 字符串結束符
return 0;
}
int main() {
char* json = "{\"name\": \"Tom\", \"age\": 18, \"gender\": \"male\"}";
char key[MAX] = "name";
char value[MAX];
if (split_json(json, key, value) == 0) {
printf("%s: %s\n", key, value);
} else {
printf("Not Found\n");
}
return 0;
}

代碼說明:

  • split_json函數用于分割JSON數據中的key和value
  • json_str:需要分割的JSON字符串
  • key:需要查找的key(要求在JSON字符串中是唯一的)
  • value:查找到的value將被保存在這里
  • strstr函數用于查找字符在字符串中出現的位置
  • strncpy函數用于復制字符串
  • 如果未找到key或value,返回-1