向JSON数组添加元素 - JsonArrayAppend
函数简介
向JSON数组末尾添加元素,支持添加任意类型的JSON值。
接口名称
JsonArrayAppend
DLL调用
int JsonArrayAppend(long arr, long value)
参数说明
参数名 | 类型 | 说明 |
---|---|---|
arr | 长整数型 | JSON数组句柄 |
value | 长整数型 | 要添加的元素句柄 |
示例
// 向JSON数组添加元素
long jsonArr = JsonCreateArray();
// 添加字符串元素
long strValue = JsonCreateObject(); // 创建字符串值
JsonSetString(strValue, "", "hello");
JsonArrayAppend(jsonArr, strValue);
// 添加数字元素
long numValue = JsonCreateObject(); // 创建数字值
JsonSetNumber(numValue, "", 123);
JsonArrayAppend(jsonArr, numValue);
// 添加对象元素
long objValue = JsonCreateObject();
JsonSetString(objValue, "name", "test");
JsonSetNumber(objValue, "age", 25);
JsonArrayAppend(jsonArr, objValue);
// 注意:所有value句柄的所有权都转移给arr,不需要单独释放
JsonFree(jsonArr); // 释放数组(会同时释放所有元素)
返回值
返回操作结果错误码,0表示成功
错误码说明
错误码 | 说明 |
---|---|
JSON_SUCCESS (0) | 操作成功 |
JSON_ERROR_INVALID_HANDLE (1) | 无效的句柄 |
JSON_ERROR_PARSE_FAILED (2) | JSON解析失败 |
JSON_ERROR_TYPE_MISMATCH (3) | 类型不匹配 |
JSON_ERROR_KEY_NOT_FOUND (4) | 键不存在 |
JSON_ERROR_INDEX_OUT_OF_RANGE (5) | 索引超出范围 |
JSON_ERROR_UNKNOWN (6) | 未知错误 |
注意事项
- 添加成功后,value句柄的所有权转移给arr,不需要单独释放
- 元素会被添加到数组末尾
- 支持添加对象、数组、字符串、数字等任意JSON类型