c语言的Yaml解析(yaml c语言)
本文讲的是C语言的yaml解析,以及yaml c语言对应的知识点。希望对你有帮助,也别忘了收藏这个网站。
这篇文章的列表: 1.C语言中操作yaml配置文件的通用操作工具。 2、yaml基础语法 3.如何用C语言解析yaml文件的键值对?谢谢你 4.YAML用法的详细解释 用C语言操作yaml配置文件的通用操作工具 在go语言中使用viper等库处理yaml配置文件非常方便,但在C语言中比较麻烦。经过一番思考,在强大的github的帮助下,我们找到了一个libyaml c库,但是网上的例子比较麻烦繁琐,所以我们做了一个相对容易配置的分析应用,可以简单配置类似于viper模式读取不同的配置文件。如果您的配置文件很复杂,请根据格式修改KeyValue的全局变量。欢迎大家一起改进。
请自行下载github-YAML/libyaml:libyaml的规范源代码库。
直接编码
Yaml示例文件
%YAML 1.1
-
mqtt:
副主题:“控制/#”
公共话题:“bbt”
服务质量:1
服务器地址:" tcp://192.168.0.25:1883 "
clientid: "kvm_test "
写日志:假
writetodisk: false
outputfile:"。/receivedMessages.txt "
心跳时间:30
#ifndef __CONFIG_H__
#define __CONFIG_H__
#ifdef __cplusplus
外部" C" {
#endif
/************************/
/*最低YAML版本*/
/************************/
#定义YAML版本主要版本1
#定义YAML版本1
#定义结构类型名称100
#define INT_TYPE_NAME 101
#定义字符串类型名称102
#定义布尔类型名称103
#定义FLOAT_TYPE_NAME 104
#定义地图类型名称105
#定义列表类型名称106
typedef结构{
char *键;
void *值;
int valuetype
char * parent
}KeyValue,* pKeyValue
#ifdef __cplusplus
}
#endif
#endif
#包括
#包括
#包括
#包括
#包括
#包括
#包括
#包含" config.h "
typedef结构{
char *副标题;//string ` YAML:" subtopic " map structure:" subtopic " `//" topic 1 "
char * PUBTOPIC//string ` YAML:" pub topic " map structure:" pub topic " `
QOS境内;//byte ` YAML:" QoS " map structure:" QoS " `//1
char * SERVERADDRESS//string ` YAML:" server address " map structure:" server address " `//= " TCP://mosquitto:1883 "
char * CLIENTID//string ` YAML:" clientid " map structure:" clientid " `//= " mqtt _ subscriber "
int HEARTTIME//int ` YAML:" heart time " map structure:" heart time " `
//command local path string ` yam:" comman local path " `
}mqttSection,* pmqttSection
typedef结构{
mqttSection Mqtt// `yaml:"mqtt "映射结构:" mqtt " `
//KVM KVM section ` YAML:" KVM " map structure:" KVM " `
} ConfigT
ConfigT配置;
对于静态KeyValue webrtcconfigc语言中yaml解析的介绍就足够了。感谢您花时间阅读本网站的内容。别忘了搜索更多关于yaml c语言和C语言中yaml解析的信息。
最后更新于 2023-09-04 14:58:19 并被添加「C语言 Yaml 解析 」标签,已有 位童鞋阅读过。
本站使用「署名 4.0 国际」创作共享协议,可自由转载、引用,但需署名作者且注明文章出处
相关文章