搜索
查看: 325|回复: 1

[文本分析] 简单演示调用cJson

[复制链接]

12

主题

624

帖子

3649

积分

荣誉会员

子非魚、安知魚之樂

Rank: 8Rank: 8

积分
3649
发表于 2017-12-2 15:23:33 | 显示全部楼层 |阅读模式
info = /*
https://github.com/DaveGamble/cJSON
本代码仅演示如何调用cJson, 解析json请使用web.json!
DLL链接: https://pan.baidu.com/s/1c1DtM0K 密码: jtb1
*/


import console;

console.setTitle(
"cJson");
console.log( info )

var api = raw.loadDll($"\lib\.res\cjson.dll");

getStr =
function(s){
   
return raw.tostring(topointer(s));
}

getVer =
function(){
   
return getStr( api.cJSON_Version() )
}

console.log(
"当前cJson版本:", getVer() );

//待解析 json 字符串
jsonStr = '{\"semantic\":{\"slots\":{\"name\":\"张三\"}}, \"rc\":0, \"operation\":\"CALL\", \"service\":\"telephone\", \"text\":\"打电话给张三\"}';

console.log(
"--------------------------------------------")

root = api.cJSON_Parse( jsonStr );
//console.log( root  ,api.cJSON_GetErrorPtr())

s = api.cJSON_Print( root )
//有格式打印
console.log('有格式打印:\n', getStr(s) )


s = api.cJSON_PrintUnformatted(root)
//无格式打印
console.log('无格式打印:\n', getStr(s) )

console.log(
"--------------------------------------------")

item = api.cJSON_GetObjectItem(root,
"semantic");
s = api.cJSON_Print( item )

console.log( getStr(s) )

console.log(
"--------------------------------------------")

api.cJSON_Delete(root);
console.pause(
true);

回复

使用道具 举报

143

主题

2145

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
11851
发表于 2017-12-2 15:26:51 | 显示全部楼层
多个选择当然是极好的!关键是你写出来了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|未经许可严禁引用或转载本站文章|站长邮箱|aardio.com|aardio官方社区 ( 皖ICP备09012014号 )

GMT+8, 2018-1-23 17:57 , Processed in 0.062504 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表