您的位置:首页 > 编程语言 > C语言/C++

c++对文件进行读写操作

2015-04-04 23:07 411 查看
#include <iostream>
#include <iomanip>
#include <fstream>
#include <sstream>
#include <vector>
#include "highgui.h"
using namespace std;
//保存数据的地方,可以换成txt文件
//vector<vector<double>> buffer;
//vector<vector<double>>::iterator i;
//vector<double>::iterator j;
int main()
{
ifstream file("Data.txt");
ofstream result("result.txt");

string tmp;
char  tmp_c[20];
bool booldata;
double tmp_d[4];
double size;

stringstream ss;
while (getline(file, tmp)){
ss << tmp; ss >> tmp_c; ss.clear();
getline(file, tmp);
ss << tmp; ss >> booldata; ss.clear();
if (booldata)
{
//对图片进行处理显示
result << tmp_c << '\n';
IplImage* img = cvLoadImage(tmp_c);
cvShowImage(tmp_c, img);
cvReleaseImage(&img);
cvDestroyWindow(tmp_c);
//对第三行进行处理
getline(file, tmp);
ss << tmp;
for (int i = 0; i < 4; i++)
ss >> tmp_d[i];
ss.clear();
size = tmp_d[2] * tmp_d[3];
result << size << '\n';
getline(file, tmp);
result << tmp<<'\n';
}
else
{
getline(file, tmp);
getline(file, tmp);
}
}
file.close();
result.close();
system("PAUSE");
return 0;
}

/*	ifstream file("Data.txt");
double tmp_d;
char tmp_c;

string tmp;
stringstream ss;

while (getline(file,tmp)){
ss << tmp;
vector<double> v;
for (int i = 0; i < 5; ++i)
{
ss >> tmp_d;
v.push_back(tmp_d);
}
ss.clear();
buffer.push_back(v);
}
for (i = buffer.begin(); i != buffer.end(); ++i)
{
for (j = i->begin(); j != i->end(); ++j)
{
cout << setfill('0') << setw(5) << *j << "\t";
}
cout << endl;
}
*/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: