问题标签 [json-c]

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 回答
431 浏览

c - 带有 Json-C 的架构 x86_64 的未定义符号

基本上这是我的第一个堆栈溢出问题,所以我很抱歉这里有任何不准确/愚蠢的问题 + 我已经尝试了 3 天来使用人们在类似问题上给出的所有其他答案来解决我的问题,但无论哪种方式我都不知道 Cmake或者我从一开始就做错了什么。

我已经通过 Homebrew ( brew install json-c ) 安装了 Json-c。我在使用 Cmake 的 macOS 上使用 Clion。我修改了我的 CmakeLists:

但我不确定如何为 TARGET_LINK_LIBRARIES 设置参数。

当我尝试构建项目时,它给了我这个:

从我在网上找到的内容来看,有人遇到了类似的问题(https://github.com/json-c/json-c/issues/235),但是在我通过 Brew 安装包之后,我没有/usr/local/lib 中的任何“json-c”文件/文件夹。usr/local/include 中只有“json-c”别名到 brew 目录。

我尝试使用存储库站点(https://github.com/json-c/json-c)上提供的说明安装 json-c,但之后我不知道如何设置 CmakeLists.txt 来制作项目工作

我究竟做错了什么。我对编程很陌生+我不太了解 cmake 以及当我通过git clone安装新包时 macOS/Homebrew 如何管理文件。

0 投票
1 回答
2104 浏览

json - Ubuntu 中的 libjson-c.so.3 与 libjson-c.so.2

我正在尝试运行在 Ubuntu 18.04 上开发的 C++ 程序。它使用 JSON-C 共享库。它在我的 Ubuntu 18.04 系统上编译和运行没有任何问题。但是它在 Ubuntu 14.04 系统上编译但在运行时崩溃,报告以下消息 -

经过一番挖掘,我发现 JSON-C 库有问题。我已经使用 ldd 命令检查了链接的 JSON-C 库。它在 Ubuntu 18.04 中给了我以下输出-

并遵循 Ubuntu 14.04 -

我猜 JSON-C 版本有问题。我在谷歌上找不到任何有用的信息。任何想法这是什么类型的问题?

0 投票
1 回答
877 浏览

json - json-c json_object_to_json_string() 等价 api 在 jansson 库中

在当前代码中,我使用的是 json-c。我正在迁移到 jansson。在 jansson 中需要一个等效的 api 来转换 json_object_to_json_string。我找到了一个,但它需要一个 json 字符串对象,否则它返回 null。

const char *json_string_value(const json_t *string) - 不工作

但我的输入是一个JSON对象而不是一个JSON字符串

样本:

谢谢。

0 投票
1 回答
139 浏览

c++ - json_tokener_parse 给出意外的输出

考虑如下所示的代码片段

在创建和返回 json 的位置调用 Classify。分类方法的定义是

Classify 中的代码片段如下所示

输出在此代码段的不同点打印到屏幕上。输出如下

  1. 在返回之前对 jstring_str 的值进行分类

    jstring_str 是:{“head_gear”:[{“confidence”:0.000000,“name”:“None”},{“confidence”:1.000000,“name”:“Cap”},{“confidence”:0.000000,“name “: “头盔” } ] }

来自语句的 jstring 的 2 值std::cout <<jstring << std::endl;

  1. 但是,在 join_prop 的命令下,似乎有一个意外的输出,如下所示

加入道具为空

我曾期望令牌器解析 jstring 并将其转换为 json。如果我能对为什么我将 join prop 设为 null 有所了解,那将非常有帮助。任何见解都会有所帮助,因为我在试图找到原因时迷失了方向。

输出似乎是基于https://jsonformatter.curiousconcept.com/的有效 json

0 投票
1 回答
2449 浏览

json-c - 我是否必须释放 json_tokener_parse 返回的 json_object?

我正在我的 C 应用程序中试验内存错误并使用 valgrind,我在 json-c lib 周围看到了许多奇怪的东西。

所以看了网上的一些信息,我看到了这个帖子json_object_new_object

所以我有2个问题要弄清楚:第一个是关于json构造的

当我将一个对象添加到另一个对象时,我是否必须释放第一个对象?例子:

根据这篇文章,它似乎没问题,但还没有真正得到回答。

问题 2:看这个tuto,似乎没有必要释放任何东西,但看我的 valgrind 日志,json_object_new_object被称为:

那么我必须这样做吗?

0 投票
1 回答
124 浏览

c - 如果换行,则在 char[] 数组中复制文件崩溃

我正在读取和解析一个 json 文件;如果文件中没有新行,则一切正常;这是代码:

这是工作的json:

这是崩溃的json。

所以我认为我的错误是在阅读文件部分。我做错了什么?

0 投票
1 回答
944 浏览

c - 如何拆分多行字符串并将它们存储到C中的json数组中

我有一个 bash 脚本,它以格式输出字符串,Hostname IP MacAddr并由我用 C 编写的脚本读取。我试图将这 3 个拆分为一个数组,并使其能够将它们存储到Json-c 对象生成看起来像{Clients: [{Hostname: Value, IP: Value, MacAddr: Value}]}.

目前我的程序能够逐行读取每个字符串并将其存储到一个数组中(该数组被初始化错误只是为了测试目的,我将改变它):

有没有人能够帮助我并引导我朝着正确的方向前进?C 中的字符串操作对我来说相对较新,我仍在努力解决它!

编辑:

我的函数现在看起来像这样:

当我运行它时,输出如下所示:{ "Clients": [ "Hostname", "192.168.1.18", "XX:XX:XX:XX", "Hostname", "192.168.1.13", "XX:XX:XX:XX" ] }

有没有人知道我做错了什么来阻止它在每个客户之后打破列表?IE

0 投票
1 回答
1833 浏览

c - 如何在 C 中使用 curl 并解析 JSON 响应

下面的代码编译并打印响应。

我的问题是:作为代表对象的字符串的响应,如何将“res”转换为字符串或直接转换为 JSON 对象?

0 投票
1 回答
575 浏览

node.js - 如何使用库导入编译 C 文件到 webassembly 文件(Emscripten)

我有一个需要解析 Json 数据的简单 C 程序。为此,我导入了 JSON-C 库。我的 C 代码是 -

我遵循的过程:- 使用命令将库(特别是 json.h 文件)编译为位代码-

然后使用 - 编译我的 C 程序

然后我一起编译了这两个文件以使用以下命令获取 wasm 文件:-

这就是我从 Vue 文件中调用它的方式

谁能指出我在这里做错了什么?任何帮助表示赞赏

0 投票
1 回答
148 浏览

json-c - 从 json-c json_object 中提取键(不是值)

我目前正在使用 libnftables 和 json-c(C 库)我的目标是使用 json-c 库解析 json 格式的 nftables 规则

事情就在那里,nftables 元素(例如表格)看起来像这样:

nftables 表基本上是一个 json_object 结构,其中键为“table”,另一个 json_object 结构作为存储所有其他信息的值。链和规则相似,但键不同

},

我需要一种从 json_object 检索密钥(如“table”、“rule”、“chain”)的方法,因为整个 nftables 规则是许多东西的混合体,因此很难猜测我们正在处理的 nftables 元素的种类浏览 nftables 规则数组时。

谢谢!