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解析的信息。

相关文章

发表新评论