1.JSON CPP
介绍
此部分,我想可以直接从GitHub上看到介绍,简而言之,JsonCPP,即一种C++中比较稳定的处理Json的库。
2. Windows平台JSON CPP
编译
2.1 源码下载
推荐直接去github
下载最新代码,看看网上到处的文章都是在各种抄袭,推荐的地址还是sourceforge上的链接,版本是0.5,那是个很早就不在维护的了吧。
git clone https://github.com/open-source-parsers/jsoncpp.git
2.2 VS编译
我们首先来看看clone下来的代码文件结构,src里面是jsoncpp源码,里面也包含一个小demo。在使用VS编译所需的dll、lib时,我们只需运行makefiles
目录下的.sln工程即可生成所需静态库lib_json.lib
。
2.3 VS工程设置
在上一步我们编译jsoncpp库成功之后,和所有的工程加载第三方库一样的道理。
第一步:Linker->General->Additional Library Directories 选择lib库所在目录(PS:只需把上一步编译后生成的lib库拷贝过来即可)
注意:debug项目对应生成的debug库,release项目对应生成的release库
第二步:Linker->Input->Additional Dependenies,填写lib_json.lib(即jsoncpp编译所得lib库名称)即可。
3. 实战
3.1 JSON读取
示例:需要解析的JSON文件如下所示:
{
"name": "xml",
"displayName": "%displayName%",
"description": "Þscription%",
"version": "1.1.1",
"is_english": true,
"publisher": "vscode",
"engines": {
"vscode": "*++++++++++++++"
},
"contributes": {
"languages": [{
"id": "xml",
"extensions": [
".xml",
".xsd",
".svg",
".targets",
".tld",
".tmx",
".vbproj",
".vbproj.user",
".vcxproj",
".vcxproj.filters"
],
"firstLine": "(\\<\\?xml.*)|(\\<svg)|(\\<\\!doctype\\s+svg)",</