powerbuilder 如何解析JSON字符串

PowerBuilder没有内建的JSON解析功能,但可以通过使用PowerScript的字符串函数和数据类型来解析JSON字符串。

以下是一种可能的解析方法:

首先,将JSON字符串转换为PowerBuilder字符串变量。

例如,假设有一个JSON字符串:

json 复制代码
{
  "name": "John Smith",
  "age": 30,
  "city": "New York"
}

可以将其转换为PowerBuilder字符串变量,例如:

powerbuilder 复制代码
string ls_json
ls_json = '{ "name": "John Smith", "age": 30, "city": "New York" }'

使用PowerScript的字符串函数解析JSON字符串。

可以使用PowerScript的字符串函数(例如PosMidReplace)来解析JSON字符串中的键值对。例如,可以使用Pos函数找到某个键的位置,然后使用Mid函数提取该键对应的值。

powerbuilder 复制代码
integer li_start, li_end

// 查找"name"键的位置
li_start = Pos('name', ls_json)
li_start = li_start + 6 // 跳过键名和冒号字符

// 查找值的结束位置
li_end = Pos('"', ls_json, li_start) - 1

// 提取值
string ls_name
ls_name = Mid(ls_json, li_start, li_end - li_start)

重复步骤2,解析其他键值对。

根据需要,可以重复步骤2,解析JSON字符串中的其他键值对。

请注意,这只是一种可能的解析方法,可以根据实际需求和JSON字符串的结构进行调整。另外,如果需要处理更复杂的JSON结构,可能需要使用循环和递归。

首先可以告诉大家目前基本上没有很好的方案,虽然网上有人提供一些json解析对象实际上仅仅适用于很小体积的JSON,对于大的JSON字符串会很慢或者干脆卡死,在实际项目我只能实话说我们一般使用后台数据库自带的解析功能进行解析但是这样就涉及到前后数据传输的问题如果碰到比较特殊的符号就会有麻烦,所以很抱歉的说目前没有很好解决方案。

相关推荐
GetcharZp几秒前
「DPlayer」超强弹幕视频播放器来了!支持m3u8直播,5分钟搞定集成!
前端
天天码行空4 分钟前
Bootstrap Table企业级web数据表格集成框架
前端·javascript·开源
import_random8 分钟前
[关联规则]apriori算法和fp-growth算法(区别)
前端
lyc23333311 分钟前
鸿蒙IME Kit高级开发:共享沙箱与跨进程数据传输🚀
前端
lyc23333312 分钟前
鸿蒙UTD详解:标准化数据类型的跨端协作密钥🔑
前端
Hilaku12 分钟前
用好了 defineProps 才叫会用 Vue3,90% 的写法都错了
前端·javascript·vue.js
古夕13 分钟前
前端模块化与Webpack打包原理详解
前端·webpack
lyc23333313 分钟前
鸿蒙自定义编辑框:与输入法交互的3个核心步骤📝
前端
英宋14 分钟前
ckeditor5的研究 (2):对 CKEditor5 进行设计,并封装成一个可用的 vue 组件
前端·javascript
古夕15 分钟前
搞定滚动穿透
前端·javascript