用于嵌入式系统的简约人类可读序列化格式解析器

2024-05-22

By “人类可读的序列化格式” I mean YAML, JSON, INI或喜欢。请注意,XML对于我的目的来说太冗长而且太不方便,所以让我们把它作为最后的手段。

格式应将数据存储为“命名键——值”配对并允许嵌套和数组。不过,缺少数组并不重要。此外,类型感知(不仅以纯字符串形式返回数据的能力)也受到高度赞赏。

我所需要的正是纯粹的C库,它提供了用于解析数据的 API(编码是可选的,不太重要)。当为 ARM7 编译时,它必须适合大约 16-20 KiB。

我用谷歌搜索和维基百科,但找不到满足上述所有要求的工件。


I found Jansson http://www.digip.org/jansson/不久前,它可能符合您的要求。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

用于嵌入式系统的简约人类可读序列化格式解析器 的相关文章

  • 如何将 std::string& 转换为 C# 引用字符串

    我正在尝试将 C 函数转换为std string参考C 我的 API 如下所示 void GetStringDemo std string str 理想情况下 我希望在 C 中看到类似的东西 void GetStringDemoWrap r
  • BASIC 中的 C 语言中的 PeekInt、PokeInt、Peek、Poke 等效项

    我想知道该命令的等效项是什么Peek and Poke 基本和其他变体 用 C 语言 类似PeekInt PokeInt 整数 涉及内存条的东西 我知道在 C 语言中有很多方法可以做到这一点 我正在尝试将基本程序移植到 C 语言 这只是使用
  • 在模板类中声明模板友元类时出现编译器错误

    我一直在尝试实现我自己的链表类以用于教学目的 我在迭代器声明中指定了 List 类作为友元 但它似乎无法编译 这些是我使用过的 3 个类的接口 Node h define null Node
  • 没有特殊字符的密码验证器

    我是 RegEx 的新手 已经进行了大量搜索 但没有找到任何具体内容 我正在编写一个验证密码字符串的正则表达式 可接受的字符串必须至少具有 4 种字符类型中的 3 种 数字 小写字母 大写字母 特殊字符 我对包含有一个想法 也就是说 如果这
  • 在一个数据访问层中处理多个连接字符串

    我有一个有趣的困境 我目前有一个数据访问层 它必须与多个域一起使用 并且每个域都有多个数据库存储库 具体取决于所调用的存储过程 目前 我只需使用 SWITCH 语句来确定应用程序正在运行的计算机 并从 Web config 返回适当的连接字
  • 如何从本机 C(++) DLL 调用 .NET (C#) 代码?

    我有一个 C app exe 和一个 C my dll my dll NET 项目链接到本机 C DLL mynat dll 外部 C DLL 接口 并且从 C 调用 C DLL 可以正常工作 通过使用 DllImport mynat dl
  • 如何使从 C# 调用的 C(P/invoke)代码“线程安全”

    我有一些简单的 C 代码 它使用单个全局变量 显然这不是线程安全的 所以当我使用 P invoke 从 C 中的多个线程调用它时 事情就搞砸了 如何为每个线程单独导入此函数 或使其线程安全 我尝试声明变量 declspec thread 但
  • 对类 static constexpr 结构的未定义引用,g++ 与 clang

    这是我的代码 a cp p struct int2 int x y struct Foo static constexpr int bar1 1 static constexpr int2 bar2 1 2 int foo1 return
  • 方程“a + bx = c + dy”的积分解

    在等式中a bx c dy 所有变量都是整数 a b c and d是已知的 我如何找到整体解决方案x and y 如果我的想法是正确的 将会有无限多个解 由最小公倍数分隔b and d 但我只需要一个解决方案 我可以计算其余的 这是一个例
  • 人脸 API DetectAsync 错误

    我想创建一个简单的程序来使用 Microsoft Azure Face API 和 Visual Studio 2015 检测人脸 遵循 https social technet microsoft com wiki contents ar
  • 为什么这个字符串用AesCryptoServiceProvider第二次解密时不相等?

    我在 C VS2012 NET 4 5 中的文本加密和解密方面遇到问题 具体来说 当我加密并随后解密字符串时 输出与输入不同 然而 奇怪的是 如果我复制加密的输出并将其硬编码为字符串文字 解密就会起作用 以下代码示例说明了该问题 我究竟做错
  • C# xml序列化必填字段

    我需要将一些字段标记为需要写入 XML 文件 但没有成功 我有一个包含约 30 个属性的配置类 这就是为什么我不能像这样封装所有属性 public string SomeProp get return someProp set if som
  • C 编程:带有数组的函数

    我正在尝试编写一个函数 该函数查找行为 4 列为 4 的二维数组中的最大值 其中二维数组填充有用户输入 我知道我的主要错误是函数中的数组 但我不确定它是什么 如果有人能够找到我出错的地方而不是编写新代码 我将不胜感激 除非我刚去南方 我的尝
  • LINQ:使用 INNER JOIN、Group 和 SUM

    我正在尝试使用 LINQ 执行以下 SQL 最接近的是执行交叉联接和总和计算 我知道必须有更好的方法来编写它 所以我向堆栈团队寻求帮助 SELECT T1 Column1 T1 Column2 SUM T3 Column1 AS Amoun
  • 如何在 Linq to SQL 中使用distinct 和 group by

    我正在尝试将以下 sql 转换为 Linq 2 SQL select groupId count distinct userId from processroundissueinstance group by groupId 这是我的代码
  • 有没有办法让 doxygen 自动处理未记录的 C 代码?

    通常它会忽略未记录的 C 文件 但我想测试 Callgraph 功能 例如 您知道在不更改 C 文件的情况下解决此问题的方法吗 设置变量EXTRACT ALL YES在你的 Doxyfile 中
  • C++ 继承的内存布局

    如果我有两个类 一个类继承另一个类 并且子类仅包含函数 那么这两个类的内存布局是否相同 e g class Base int a b c class Derived public Base only functions 我读过编译器无法对数
  • 使用特定参数从 SQL 数据库填充组合框

    我在使用参数从 sql server 获取特定值时遇到问题 任何人都可以解释一下为什么它在 winfom 上工作但在 wpf 上不起作用以及我如何修复它 我的代码 private void UpdateItems COMBOBOX1 Ite
  • C++ 中的 include 和 using 命名空间

    用于使用cout 我需要指定两者 include
  • 在OpenGL中,我可以在坐标(5, 5)处精确地绘制一个像素吗?

    我所说的 5 5 正是指第五行第五列 我发现使用屏幕坐标来绘制东西非常困难 OpenGL 中的所有坐标都是相对的 通常范围从 1 0 到 1 0 为什么阻止程序员使用屏幕坐标 窗口坐标如此严重 最简单的方法可能是通过以下方式设置投影以匹配渲

随机推荐

  • 精度类型

    使用 keras 库获得的精度如下 model compile optimizer sgd loss mse metrics tf keras metrics Precision sklearn 计算出的哪种精度与 keras 计算出的精度
  • 使用格式表过滤数据框

    样本数据 修改自formattablegithub 文档 df lt data frame id 1 10 name c Bob Ashley James David Jenny Hans Leo John Emily Lee age c
  • Haskell 处理负参数

    尝试对两个值求和 其中只有一个为负值 例如 1 and 2 soma Float gt Float gt Float soma x1 x2 x1 x2 结果出现错误 为什么
  • 使用 CLI 访问 Hazelcast

    假设我有 Hazelcast 实例在远程计算机上运行 并且它在官方 Docker 映像中执行 所以我希望看到 Hazelcast 存储的一些数据 就像第一个视频中一样here https hazelcast org getting star
  • 如何将 DateTime 格式化为 Web UTC 格式?

    我有一个日期时间 我想将其格式化为 2009 09 01T00 00 00 000Z 但是下面的代码给了我 2009 09 01T00 00 00 000 01 00 两行 new DateTime 2009 9 1 0 0 0 0 Dat
  • com.google.android:android:jar 的 dependency.dependency.version' 丢失

    我正在尝试使用 Eclipse 运行一个简单的虚拟 Android 项目 并且我正在尝试使用 Maven amd 我已按照已接受答案的教程进行操作this https stackoverflow com questions 6735562
  • 如何在Android中将文件转换为base64(如.pdf、.text)?

    如何将 SD 卡文档 pdf txt 转换为 Base 64 字符串并将字符串发送到服务器 这个方法对我有用 String encodeFileToBase64Binary encodeFileToBase64Binary yourFile
  • musicbrainz api 获取所有发行组和发行日期

    如何使用 musicbrainz api 在一次调用中获取艺术家的所有发行组和发行日期 我最接近做到这一点的是使用 http musicbrainz org ws 2 release group query arid 494e8d09 f8
  • 查找屏蔽 CI/CD 变量的值

    我目前正在尝试查找虚拟机中 CI CD 变量的值 我尝试输出它 但发现变量的值在作业日志中被屏蔽 这是我在 gitlab ci yml 中使用的代码 image python 3 stages deploy deploy stage dep
  • 未将对象引用设置为对象的实例 - 如何在异常中查找有问题的对象名称?

    这是我编程存在的祸根 部署应用程序后 当出现此错误时 没有多少调试转储可以告诉您哪些对象未实例化 我有调用堆栈 这很棒 它大致告诉我对象在哪里 但是有没有办法让 NET 告诉我对象的实际名称 如果你在调试时发现它们 程序当然会在有问题的生物
  • 使用referrer javascript从google获取查询参数

    是否可以从google搜索中获取查询参数 IE 如果有人用谷歌搜索自行车 网址就会变成 https www google es search q bicycles 如果您随后进入搜索结果并且有人点击您的页面 您将无法看到带有 documen
  • 添加@Named时@SessionScoped不起作用

    考虑以下支持 bean import javax faces bean ManagedBean import javax faces bean SessionScoped ManagedBean SessionScoped public c
  • C++11 基于范围的 for 循环效率“const auto &i”与“auto i”

    在 C 11 中 我可以像这样迭代一些容器 for auto i vec std cout lt lt i lt lt std endl 但我知道这是不必要的 不必要地 因为我只需要print的价值观vec 复制 EDIT 的每个元素vec
  • 删除SD卡上的文件夹

    I tried File delete 但它不起作用 如何删除SD卡上的目录 我正在开发 Android 2 1 在删除目录本身之前 您必须将所有目录清空 请参阅here http www rgagnon com javadetails j
  • 我可以在 ids 过滤器或一般查询子句中指定的值数量的最大限制?

    在elasticsearch中指定可以执行匹配的值数量的最大限制是多少 我在某处读到它是 1024 但也是可配置的 真的吗 它如何影响性能 curl XPOST localhost 9200 my index search pretty d
  • 监控子进程的内存使用情况

    我有一个 Linux 守护进程 它分叉几个子进程并监视它们是否崩溃 根据需要重新启动 如果父进程可以监视子进程的内存使用情况 以检测内存泄漏并在超出一定大小时重新启动子进程 那就太好了 我怎样才能做到这一点 您应该能够从 proc PID
  • 在 HTML 中,

    应该以哪种方式嵌套?

    是否有更正确的嵌套顺序 a and h1 HTML 中的元素 e g a href www example com h1 Example h1 a or h1 a href www example com Example a h1 在 HT

  • 计算 HH:MM:SS 中两个日期之间的时间差 javascript

    我用 JavaScript 创建了一个计时器应用程序 首先 它使用当前的 UTC 日期来初始化计时器并提供一些参考 这是代码 on timer function e var self this if e target hasClass pt
  • Python pysft/paramiko“协商期间的EOF”错误

    我正在使用 pysftp 下载和上传一些文件 这个完全相同的代码我在一小时前刚刚运行过并且很好 但现在我收到了 协商期间的 EOF 错误 我在这里缺少什么 gt gt gt sftp pysftp Connection host usern
  • 用于嵌入式系统的简约人类可读序列化格式解析器

    By 人类可读的序列化格式 I mean YAML JSON INI或喜欢 请注意 XML对于我的目的来说太冗长而且太不方便 所以让我们把它作为最后的手段 格式应将数据存储为 命名键 值 配对并允许嵌套和数组 不过 缺少数组并不重要 此外