linux 有没有办法在内核模块上解析JSON?

zpgglvta  于 12个月前  发布在  Linux
关注(0)|答案(1)|浏览(160)

我正在编写一个需要解析JSON字符串的内核模块,我想知道Linux内核是否提供任何API来完成它,我现在处理它的方式是将JSMN的端口写入Linux内核,但我认为这不是一个优雅的方法,所以有什么更优雅的方法吗?

xmjla07d

xmjla07d1#

Linux内核不支持JSON格式。
这是一个开放源代码项目,我正在开发支持Linux内核上的JSON:https://github.com/emalele1688/JsonOnKernel
库接口被记录到kjson.h文件中。你可以把库代码链接到你的项目中并开始使用它。这里有一些例子;

struct kjstring_t to_parse;
struct kjson_container *ctn;
struct kjson_object_t *obj;
char *str = "{\"accepted_1\": {\"codes\": []}, \"accepted_2\": [{\"codes\": []}, {\"enabled\": 1}]}"; // A simple JSON
kjstring_new_string_buffer(&to_parse, str, strlen(str));
ctn = kjson_parse(&to_parse); // This will start to parse the JSON
obj = kjson_lookup_object(ctn, "enabled");
int enabled = kjson_as_integer(obj); // is 1

字符串
你可以在仓库里找到更多的例子。目前这个库正在我自己开发中,仓库对每个拉取请求都是开放的。

相关问题