问题标签 [jansson]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
42 浏览

c - 如何从C中更大的json对象中提取一个json对象作为新的json

我想提取一个 json 键值对作为新的 json 对象。抱歉,我对 json 很陌生,所以也许我没有尽可能清楚地说明问题。所以这里有一个例子:

所以现在我想将"BB":22键值对提取为一个新对象。看起来像这样:

是否有任何函数可以直接执行此操作,或者您需要声明一个新的空 json 并用相应的键和值填充它?

我只能使用这个库中预先编写的函数:https ://jansson.readthedocs.io/en/2.13/apiref.html#object

请让我知道我该怎么做的最佳做法是什么,如果描述或示例中有任何错误,请指出。我在这个库上找不到很多例子

谢谢

0 投票
1 回答
329 浏览

c - C : jansson json_decref - 分段错误

我有一个 for 循环,在迭代循环时,如果索引甚至是索引,则必须释放 json 对象,并且必须再次构造一个新对象,并且必须再次重复该过程。

同样,使用以下脚本,

如何使用 jansson json 对象构造并在索引为偶数索引时清除其内存来实现以下结果?

而现在,上面的脚本给出了以下响应,

0 投票
1 回答
129 浏览

c - C - 如何解决内存泄漏?

下面是脚本的一部分,同样是从 main 函数调用的。如果我注释掉以下函数,则一切正常,没有任何内存泄漏问题,而通过包含此函数,该过程最终会出现内存泄漏,并最终在 2 小时内停止。

在程序执行之前,嵌入式 linux 平台中的可用内存是,

随着执行持续 2 小时等,FreeMemory 不断下降,最终在 3 小时结束时,进程自动终止。如何解决此类问题?

0 投票
0 回答
77 浏览

c - 如何改进这个c程序以避免分段错误?

在每个偶数索引上,我需要通过 MQTT 发送构造的 json,并且必须在发送后清除 json,并且必须再次构造 json,同样,我使用以下脚本,

然而,当我编译和执行相同的,

如何解决这个问题?上述过程有什么问题以及如何纠正?

来自评论的建议

根据评论的建议,上面的代码已修改为,

并能够达到预期的结果,即

0 投票
0 回答
164 浏览

linux - Jansson 构建错误

我对 Linux 很陌生,在将外部软件集成到我的程序中时遇到问题。当我按照有关集成包括 Jansson 在内的几行的说明进行操作时(在本文档中将 G4Sipm 添加到您的 CMakeLists.txt 中,在此处输入链接描述)我收到错误,我怀疑这是集成本身的问题,因为它确实单独构建在它的自己的。我得到的错误是在 command 之后build -j2。这是终端输出的一部分:

我尝试添加#include <jansson_config.h>而不是#include "jansson_config.h"但是错误仍然存​​在。我尝试联系项目负责人,但似乎他们都已从项目中移出。任何帮助和建议将不胜感激,谢谢!

编辑 1:为澄清起见,我使用的是最新版本的 Jansson

0 投票
1 回答
139 浏览

c - 如何从谷歌 api 解码 json 数据

我在我的程序中使用下面的代码来获取纬度和经度。

这返回如下,

我想分别解码latlng赋值并将其存储在一个数组中。

我已经安装了 jansson lib,但不知道如何使用它。你能给我一些想法如何做到这一点吗?

0 投票
1 回答
148 浏览

c - 为不同嵌套级别的json提取不同的键集

我有以下 JSON 对象,我需要从中检索某些键的值。例如,在外部 JSON 对象中,我只需要“时间戳”和“类型”,接下来从嵌套的“元”对象中我只需要“版本”,从嵌套的“有效负载”中,我需要字段“原因”、“类型”和来自其嵌套对象“数据”的“条件”

我写了一个函数来检索这些数据:

但是,代码看起来很重复,我想知道是否有任何方法可以概括它?首先想到的是创建一个指向每个阶段所需键的锯齿状指针数组,然后遍历该数组并仅检索特定嵌套级别的某些键,例如:

但是,这个解决方案没有解决关于在哪里存储键名的问题,这些键名指向嵌套的 JSON(例如“元、有效负载、数据”)。

所以,问题是:如何概括上述代码以及我应该使用什么数据结构来存储持有 json 对象的键名和我需要获取值的键名。

0 投票
0 回答
34 浏览

json - 如何在使用 jansson 库执行 json_dump 时为 json_real 设置精度

如果将 8.13 的双精度值传递给 json_real 并转储 json,我看到它的打印为 8.1300000000000008,有没有办法在 C 中准确地获得 8.13 或 8.13000000000000000?

0 投票
0 回答
118 浏览

c - 如何使用 librdkafka 发送 json 数据?

我正在尝试使用 librdkafka c api 发送 json 有效负载。我现在想做的是

使用上面的代码,我设法将字节发送给代理。但是 json 有效负载似乎格式不正确。消费者(消费者是使用 Newtonsoft json lib 进行反序列化的 C# 客户端)抛出以下错误:

我不太清楚我的错误是在我构造 json 对象、将其编码为字符串的方式上,还是在我使用 librdkafka 发布 json 字符串的方式上。

0 投票
0 回答
41 浏览

c - 使用 Jansson API 的 json 中的多行“值”

这里的某些内容不允许将 '\n' 解释为换行符控制字符。有人可以帮忙吗?

打印时的输出似乎打印

"我希望这个语句\n在换行符中,\n因为我想要它\n那样。",

并不是

“我想要这份声明

在换行符中,

因为我想要

那样。”

PS我已经检查了以下可能的重复项(我可能遗漏了一些东西),但它们似乎不适合我正在寻找的东西。