c++读取文件之 您所在的位置:网站首页 CPP生成器下载 c++读取文件之

c++读取文件之

2023-06-28 13:31| 来源: 网络整理| 查看: 265

实际项目总会遇到有很多超参数的情况,用常规的结构体等无法有效的涵盖所有,为了方便用户进行配置使用,因此使用yaml的方式进行编辑配置,因此去调研使用了yaml-cpp的使用方法。

1、yaml-cpp下载和编译

下载方式很简单,github找到yaml-cpp的repo(yaml-cpp)如下所示: 在这里插入图片描述 从上面下载zip包到电脑的文件夹下,并进行解压: 在这里插入图片描述 打开已安装的cmake界面,配置源码位置和编译结果路径,记得要把YAML_BUILD_SHARED_LIBS勾选上,否则后面在自己项目中使用yaml-cpp的时候会出现库缺失的情况。然后直接点击Configure和Generate,不出意外是可以直接生成成功的。 在这里插入图片描述 接着点击cmake-gui上面的open Project直接使用visual studio 2019打开yaml-cpp的源码项目。如果你希望你的lib和dll在Debug/x64下使用,那就配置整个工程的环境为Debug\x64,然后对整个项目重新生成,即可在你的yaml-cpp-master/build/下面生成相对应的lib和dll文件,如下所示: 在这里插入图片描述 以上就是整个yaml-cpp的编译的编译过程。

2、实际项目使用

新建工程cpp-demo,并添加相应的库目录、包含目录、以及链接库名称,具体操作如下所示:

添加相应附加包含目录: 在这里插入图片描述添加相应的附加库目录 在这里插入图片描述添加链接器 在这里插入图片描述 以读取如下文件为例: flag: 1 mode: p L_top_x: 776 L_top_y: 529 R_top_x: 800 R_top_y: 532 R_bottom_x: 1786 R_bottom_y: 952 L_bottom_x: 752 L_bottom_y: 1008 data_path: ./config/detect/1.jpg save_filepath: ./config/mmdet

需要引入的主要库为: #include"yaml-cpp/yaml.h" 主要的实现代码如下所示:

#include #include"yaml-cpp/yaml.h" #include using namespace std; using namespace cv; int main() { std::string yaml_path = "D:/personal/personal/c++/yolo_detect/Config_yolo.yaml"; YAML::Node config = YAML::LoadFile(yaml_path); int flag = config["flag"].as(); cout


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有