C++实现数据文件存储与加载

时间:2021-08-28 16:08:21

本文实例为大家分享了C++实现数据文件存储与加载的具体代码,供大家参考,具体内容如下

首先请先确认已经安装好了opencv3及以上版本。

?
1
2
3
4
5
#include <opencv2/opencv.hpp>
#include <iostream>
#include <string>
using namespace cv;
using namespace std;

存储

then

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int main()
{
//创造一些要存的数据先
 string words = "hello, my guys!";
 float n = 3.1415926;
 Mat m = Mat::eye(3, 3, CV_32F);
 //开始创建存储器
 FileStorage save("data.yml", FileStorage::WRITE);// 你也可以使用xml格式
 save << "words" << words;
 save << "number" << n;
 save << "matrix" << m;
 save.release();
 //存储完毕
 cout << "finish storing" << endl;

加载

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//加载数据,类似Python字典的用法,创建加载器
 FileStorage load("data.yml", FileStorage::READ);
 
 float nn;
 Mat mm;
 string ww;
 load["words"] >> ww;
 load["number"] >> nn;
 load["matrix"] >> mm;
 cout<< ww << endl << nn << endl << mm;
 cout << endl << "That's the end";
 load.release();
 
 return 0;
}

完整代码

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include <opencv2/opencv.hpp>
#include <iostream>
#include <string>
 
using namespace cv;
using namespace std;
 
int main()
{
 string words = "hello, my guys!";
 float n = 3.1415926;
 Mat m = Mat::eye(3, 3, CV_32F);
 FileStorage save("data.yml", FileStorage::WRITE);
 save << "words" << words;
 save << "number" << n;
 save << "matrix" << m;
 save.release();
 cout << "finish storing" << endl;
 
 FileStorage load("data.yml", FileStorage::READ);
 
 float nn;
 Mat mm;
 string ww;
 load["words"] >> ww;
 load["number"] >> nn;
 load["matrix"] >> mm;
 cout<< ww << endl << nn << endl << mm;
 cout << endl << "That's the end";
 load.release();
 
 return 0;
}

演示结果

C++实现数据文件存储与加载

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/qq_38063935/article/details/91611062