OpenCV学习笔记——FileStorage类 XML与YAML的操作

10 篇文章 0 订阅

XML:eXtensible Markup Language "可扩展的标识语言",XML是一种元标记语言,开发者可以根据自身徐亚定义自己的标记,任何满足XML命名规则的名称都可标记,而且XML描述了文档的结构和语义,是一种语义/结构化的语言

YAML:YAML Ain't a Markup Language “YAML不是一种置标语言”,为了抢到语言是以数据为中心,而不是以置标语言为中心,可读性高,用来表达资料序列的格式,是一种试图用比XML更敏捷的方式完成XML所完成 的任务

利用XML和YAML是使用非常广泛的文件格式,用来进行文件存储和还原各式各样的数据结构

FileStorage类在Opencv中实现对两种文件的操作。

1、打开

 FileStorage::FileStorage()

 FileStorage::FileStorage(const String& filename, int flags, const String& encoding=String());
	FileStorage fs(".xml", FileStorage::WRITE);
	FileStorage fs;
	fs.open(".xml", FileStorage::READ);

2、写入文件用>>运算符,读出用<<符号

fs << "iterationNr" << 100;
	int itNr;
	fs["iterationNr"] >> itNr;
	itNr = (int)fs["iterationNr"];

3、对于vector结构的输入和输出,需要在一个元素前加上】,在最有一个元素前加上】;

对于Map文件,使用的是‘{’和‘}’;读取的时候会用到FileNode和FileNodeIterator数据结构

4、文件关闭会在FileStorage类销毁的时候自动进行,也可以显示调用其析构函数FileStorage::release()实现


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值