C++ 读写文件(ifstream、ofstream、stringstream)

#include <iostream>
#include <sstream>
#include <fstream>
#include <string>
#include <opencv2/opencv.hpp>

using namespace std;

int main (int argc, const char** argv){

    if (argc==1)
    {
      cerr << "NO FILE PARAMETERS" <<endl;
      return 0;
    }

    vector<string> fileVector
    int count=1;
    while (count<argc)
    {
 	 fileVector.pushback(argv[count]);
     count++;
    }

    ifstream fileR(fileVector[0]);//图像路径 * n
    ifstream fileRR(flieVector[1]);//位姿信息 * n
    ofstream fileW(fileVector[2]);//
    
    if (!fileR && !fileRR)
    {
        cout << "NO fileR or NO fileRR" << endl;
        return -1;
    }

    int image_count = 0;
    string filename;

    while (getline(fin, filename))
    {
      Mat frame = imread(filename);
      Mat imggray;
      imshow("Live", frame);
      waitKey(30);

      //
      //假设有writeT[6],3个平移3个旋转代表位姿
      //
      std::string gtpose;
      getline(fileRR, gtpose);
      std::stringstream ss(gtpose);//只是为了获取时间戳(图像的ID)
      std::string data;
      ss >> data ;
      fileW<<data<<" ";
      fileW<<writeT[0]<<fixed<<setprecision(4)<<" ";
      fileW<<writeT[1]<<fixed<<setprecision(4)<<" ";
      fileW<<writeT[2]<<fixed<<setprecision(4)<<" ";
      fileW<<writeT[3]<<fixed<<setprecision(4)<<" ";
      fileW<<writeT[4]<<fixed<<setprecision(4)<<" ";
      fileW<<writeT[5]<<fixed<<setprecision(4)<<endl;
      ss.clear();
    }

    fileR.close();
    fileRR.close();
    fileW.close();
    return 0;
}

你可能感兴趣的:(学习笔记)