QtWebkit本地C++与JavaScript数据对接(映射)
来源:互联网 发布:《数据挖掘》 编辑:程序博客网 时间:2024/05/21 18:38
QtWebkit本地C++与JavaScript数据对接
QtWebKitBridge已经实现了本地C++与JavaScript数据对接,这些对接对程序员来可以说是透明的,转换隐式的。它巧妙的利用的Qt的万能类型QVariant。
数据类型对接表,另外QTimeQDate也会与javascript的时间日期进行自动转换。
java类型
Qt C++ 类型
javaType
QVariant
javaArray
QVariantList
JsonObject
QVariantMap
JsonObjectArray
QVariantList+QvariantMap
注:详细也参考http://doc.qt.nokia.com/4.7-snapshot/qtwebkit-bridge.html
一般数据的对接
Javascript调用示例
varvol = '32';
setVolume(vol);
Qt&&c++对接示例
//利用隐式转换bool setVolume(int vol){ //使用隐式转换的整形,如果不能转换将默认转换成0, //所以0是正常值或非法值,如果关心数据的合法性可以使用以下面的方法解决 return doSomeThing(vol);}//使用更安全的机制bool setVolume(const QVariant & vol){ //判断万能数据的合法性,是否为int if(vol.canConvert(QVariant::Int)) { //如果是合法的int 将时行转换; int n = vol.toInt(); return doSomeThing(n); } else { return false; }}
Json 数据的对接
Javascript调用示例,处理返回的Json对象数组
var files = getFileAll();var i;for(i = 0; i < files.length; i++){ alert("name:"+files[i].name+" type:"+files[i].type+" size:"+files[i].size);}
Qt&&c++对接示例,把数据用QVariantMap封成Json对象,放入数组返回
QVariantList FileSys::list(){ QVariantList list; QFileInfoList filelist; qDebug()<<"=====>filepath:"<<d->path(); filelist = d->entryInfoList(QDir::NoDotAndDotDot|QDir::Dirs|QDir::Files); //开始对数据进行逐个封装 foreach(const QFileInfo& file,filelist) { //封装成Map与JSon 对接 QVariantMap map; map["name"]=file.fileName();//字符串型 map["type"]=file.isDir();//bool 型 map["size"]=file.size();//整型 //将数据放入列表中 list<<map; } //返回数据,对接层会将其转换为JSON格式 return list;}
- QtWebkit本地C++与JavaScript数据对接(映射)
- QT之QtWebKit与JavaScript交互(一)
- Erlang 与 c 函数 对接
- Qt与QtWebKit
- QtWebKit
- Matlab模型与实际数据对接+C#混合编程
- springmvc 对接安卓与ios,获取数据
- angular js 实现前台与后台数据对接(Service $http)
- Javascript本地存储数据方案
- Javascript本地存储数据方案
- delphi内存映射与映射数据获取
- delphi内存映射与映射数据获取
- 跨平台数据对接
- Postgresql+ArcGIS数据对接
- Echrtart 数据对接
- SuperMap对接PostGIS数据
- 前后端数据对接
- webservice 数据绑定与映射
- 对文件操作(复制/移动/删除)时 报“文件正由另一进程使用,因此该进程无法访问此文件”的解决办法
- Dsoframer使用
- JPA学习笔记2——JPA高级
- WaitForSingleObject和CEvent的用法
- php操作Mysql简单介绍:连接mysql|打开数据库|查询|关闭mysql
- QtWebkit本地C++与JavaScript数据对接(映射)
- 用指向指针的方法对n个整数排序并输出。
- 黑马程序员_C#基础学习之第一季
- sql左右连接的区别
- Python 下写的几个排序算法
- 微软2012暑期实习生校园招聘 软件测试笔试题(4月7号)
- Android 设备上实现串口的移植
- uva490
- 理解 chroot