您的位置:首页 > 编程语言 > C语言/C++

js与C++交互及C++解析json

2016-06-17 18:39 453 查看
转载:http://zhidao.baidu.com/link?url=LLuWzwMmpfVcQeSGv1CrAfRXpnZaetm9xypqwMW6zxLhhKES-rITAsG0-Ku-bSMAc2nVoSFk1tOJ0biPcQIoHK

转载:http://blog.csdn.net/aasmfox/article/details/7016236

1.手动点击网页按钮C++后台响应

2.设置自动触发事件

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Untitled Page</title>
<style type="text/css">
#button1
{
width: 306px;
}
#button2
{
width: 306px;
}
</style>
<script language="javascript" type="text/javascript">
function Test()
{
alert("你调用了Test");
}

function GlobalObject()
{
this.Test=function()
{
alert("你调用了GlobalObject.Test");
}
}

function OnTest() {

alert("自动触发事件");

}

var globalObject = new GlobalObject();

// 两秒后模拟点击
setTimeout(function () {
// IE
if (document.all) {
document.getElementById("clickMe").click();//找到对应元素进行点击
}
// 其它浏览器
else {
var e = document.createEvent("MouseEvents");
e.initEvent("click", true, true);
document.getElementById("clickMe").dispatchEvent(e);
}
}, 2000);
</script>
</head>
<body>
测试页面<br />
<br />

<a href="#" id="clickMe" onclick="OnTest();">link</a>
<input id="button1" type="button" value="点击演示在C++中处理按钮的onclick事件" />
<br />
<br />
<input id="button2" type="button" value="点击调用客户端的CppCall函数" onclick="return window.external.CppCall()" />
<br />
<br />
<p id="p1">Hello World!</p>
<br />
<div id="size_info"></div>
</body>
</html>


js与C++交互demo

比较详细的交互教程:

转载:http://blog.csdn.net/charlessimonyi/article/details/18447471

C++ 解析Json——jsoncpp

转载:http://www.cppblog.com/wanghaiguang/archive/2013/12/26/205020.html

转载:http://blog.csdn.net/crazyer2010/article/details/8962449

转载:http://blog.sina.com.cn/s/blog_86fe5b4401019xbt.html

转载:http://93635083.blog.sohu.com/269335462.html

转载:http://blog.csdn.net/chenscmail/article/details/10109739

转载:http://www.cnblogs.com/kex1n/archive/2011/12/02/2272328.html

解析JSon串:转载:https://www.cppfans.org/1445.html

VC下使用JSONCPP(json)



Jsoncpp是个跨平台的开源库,下载地址Jsoncpp开源库

使用JsonCpp的Demo

3.使用jsoncpp几个例子:

void Myparse1()
{
const char* str = "{\"result\":{\"id\":\"cc1521c7e1084d90bb26c6a0ee965c8c\",\"mLocktime\":0,\"mTouchid\":\"0\",\"modifyTime\":1480753775000},\"status\":\"ok\"}";
Json::Reader reader;
Json::Value root;
if (reader.parse(str, root))    // reader将Json字符串解析到root,root将包含Json里所有子元素
{
std::string str = root["result"]["id"].asString();//得到
std::string str1 = root["status"].asString();//得到ok

}
}

void Myparse2()
{
const char* str = "[{\"status\":\"ok\"},{\"MLocktime\":0,\"MTouchid\":\"0\",\"id\":\"cc1521c7e1084d90bb26c6a0ee965c8c\",\"modifyTime\":\"2016-12-03 16:29:35\"}]";
Json::Reader reader;
Json::Value root;
if (reader.parse(str, root))    // reader将Json字符串解析到root,root将包含Json里所有子元素
{
int size = root.size();
std::string str = root[size-2]["status"].asString();
std::string str1 = root[size-1]["id"].asString();

}
}

void Myparse3()
{
const char* str = "[{\"age\":24},{\"age\":1},{\"age\":22},{\"age\":24},{\"age\":16}]";
Json::Reader reader;
Json::Value root;
if (reader.parse(str, root))    // reader将Json字符串解析到root,root将包含Json里所有子元素
{
int size = root.size();
int age = root[size-5]["age"].asUInt();//得到24

}
}

void Myparse4()
{
const char* str = "{\"friendArray\":[{\"age\":24},{\"age\":1},{\"age\":22},{\"age\":24},{\"age\":16}]}";
Json::Reader reader;
Json::Value root;
if (reader.parse(str, root))    // reader将Json字符串解析到root,root将包含Json里所有子元素
{
int size = root["friendArray"].size();
int age = root["friendArray"][size-1]["age"].asInt();

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: