C++读取txt
yang and me
封装了两个函数,不知是不是鸡肋,因为需要两次打开文件
(yang tell me 不鸡肋,确实该这样)
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <fstream>
#include <stdio.h>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
using namespace cv;
using namespace std;
String BASE = "miao-db/labels/train2017/";
int Get_Matrow(String s) {
//封装了一个函数,读取行数
ifstream fin;
int i = -1;//循环多走一遍,初始值设置-1,最后可返回矩阵行数
string str;
fin.open(BASE + s);
while (!fin.eof())
{
getline(fin, str);
i++;
}
fin.close();
return i;
}
void readfile(String s,Mat &data) {
//转变为Mat存取
double aa[100][5];
String path = BASE + s;
FILE* fp = fopen(path.c_str(), "r");
int idx = 0;
int tmp = 0;
while (!feof(fp)) {
double* p = aa[idx];
int ret = fscanf(fp, "%lf %lf %lf %lf %lf", &p[0], &p[1], &p[2], &p[3], &p[4]);
if (ret < 5) {
break;
}
idx++;
}
fclose(fp);
for