C语言使用josn库解析数据
首先 添加好百度下载的json库:
代码演示:
#include <stdio.h>
/*
char *requestHead = "GET /area-to-weather?area=广州 HTTP/1.1\r\n""Host: ali-weather.showapi.com\r\n""Authorization: APPCODE d487d937315848af80710a06f4592fee\r\n\r\n";*/
#include <sys/socket.h>
#include <netinet/in.h>
#include <netinet/ip.h> /* superset of previous */
#include <sys/types.h> /* See NOTES */
#include <sys/socket.h>
#include <arpa/inet.h>
#include <stdio.h>
#include <unistd.h>
#include <string.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>//添加json 库文件
#include "cJSON.h"double get_double(cJSON *json, char *key)
{cJSON *value = cJSON_GetObjectItem(json,key);return cJSON_GetNumberValue(value);
}char *get_string(cJSON *json, char *key)
{cJSON *value = cJSON_GetObjectItem(json,key);return cJSON_GetStringValue(value);
}int main()
{//1.打开获取json 数据 int fd = open("json.txt",O_RDWR);char string[4096]={0}; read(fd,string,4096);printf("%s\n",string);//解析JSON 数据包 cJSON *json = cJSON_Parse(string);if(json == NULL){const char *err = cJSON_GetErrorPtr(); fprintf(stderr,"cJSON_Parse fail:%s\n",err);}else {printf("解析成功\n");}printf("success:%s\n",get_string(json, "success")) ;printf("city:%s\n",get_string(json, "city")) ;cJSON *info = cJSON_GetObjectItem( json,"info");printf("date:%s\n",get_string(info, "date")) ;printf("week:%s\n",get_string(info, "week")) ;printf("high:%s\n",get_string(info, "high")) ;printf("low:%s\n",get_string(info, "low")) ;}
执行结果:
C语言使用josn库解析数据相关推荐
- 【Python爬虫学习笔记4】结合Xpath与lxml库解析数据
在之前的学习中了解了如何使用爬虫向目标服务器发送请求并获取响应,而此后便是要对响应进行处理,这里的处理在爬虫中通常指的是数据解析,即将相应内容数据化以方便我们进行有效数据的提取.在此过程中,有许多解析 ...
- Python 运用Dpkt库解析数据包
dpkt是一个用于解析和操作网络数据包的Python模块.它提供了对各种网络协议(如以太网.IP.TCP.UDP.ICMP等)的解析功能,并允许访问和操作数据包的各个字段和参数.可以用于解析从各种抓包 ...
- 解决方法:STM32使用cJSON解析数据失败
一.问题 在 STM32 移植 cJSON 库后,使用 cJSON_Parse(),解析失败. char cmd[512] = "{\"msg\":\"this ...
- UE C++基础 | UKismetStringLibrary 函数库解析
文章目录 虚幻C++ UKismetStringLibrary 函数库解析 数据类型转换 构建字符串 其它字符串函数 Append Equal | Not Equal (字面用法) Len (返回字符 ...
- Andorid中使用Gson和Fast-json解析库解析JSON数据---第三方库学习笔记(二)
JSON介绍: JSON:JavaScript对象表示法 JSON是存储和交换文本信息的语法. 特点: JSON是轻量级的文本数据交换格式 JSON独立于语言和平台 JSON具有自我描述性,更易理解 ...
- 二级c语言上机题库及解析,2013年计算机二级C语言上机题库及答案解析(3)
填空题 给定程序中,函数fun的功能是:在形参ss所指字符串数组中,查找含有形参substr所指子串的所有字符串并输出,若没找到则输出相应信息.ss所指字符串数组中共有N个字符串,且串长小于M.程序中 ...
- python中的记录指针_使用Python向C语言的链接库传递数组、结构体、指针类型的数据...
使用python向C语言的链接库传递数组.结构体.指针类型的数据 由于最近的项目频繁使用python调用同事的C语言代码,在调用过程中踩了很多坑,一点一点写出来供大家参考,我们仍然是使用ctypes来 ...
- python结构体数组传出接收c动态库_使用Python向C语言的链接库传递数组、结构体、指针类型的数据...
使用python向C语言的链接库传递数组.结构体.指针类型的数据 由于最近的项目频繁使用python调用同事的C语言代码,在调用过程中踩了很多坑,一点一点写出来供大家参考,我们仍然是使用ctypes来 ...
- c语言自定义的xml解析库,轻量级C语言实现的xml解析库minixml
搜索热词 1下载:http://www.msweet.org/downloads.PHP?L+Z3 2说明:@H_404_4@Mini-XML是一个小型的开源的XML解析器,采用 C 语言开发.该解析 ...
- c-ares 一个C语言的异步DNS解析库
c-ares是一个C语言的异步DNS解析库,可以很方便的和使用者的事件循环统一起来,实现DNS的非 阻塞异步解析,libcurl, libevent, gevent, nodejs都在使用. 下面摘自 ...
最新文章
- 一文综述人脸检测算法(附资源)
- ERP实施需要一种态度
- Paddle中的数据集合定义与加载
- Spring Cloud Alibaba基础教程:Sentinel Dashboard同步Apollo存储规则
- java io系列10之 FilterInputStream
- php header会重定向吗,php – 可以依靠header()重定向来结束程序流吗?
- 反应式服务中的线程本地状态可用性
- 网络仿真中数据生成相关
- 【渝粤教育】国家开放大学2018年春季 0064-22T20世纪欧美文学 参考试题
- Anaconda Python安装,Spyder汉化及调试
- Angular实践----前言与概览
- 并发 (一)——基本概念
- c++ map 析构函数_面向偷懒的编程 - C/C++项目中使用Go的分布式系统库
- tp3.2框架运行原理
- PHP源码中EXPECTED和UNEXPECTED的作用
- Linux接蓝牙音响无声音,win10蓝牙音箱没有声音怎么办_win10蓝牙音响连接成功没声音处理方法...
- 热闹2年,折叠屏手机怎么还是“雷声大、雨点小”?
- Excel分列功能的使用
- 利用CSS3实现蓝天白云大海景象
- 前端面试第快速复盘,不标准的面试经验分享 (二)