我有一个数据文件“1.dat”,它具有4列和250行。从文件中单独读取数据并在C++中乘以两列
我需要读取每一行并处理它,例如乘以两列[col1和col2]。
你能提出一种方法来做到这一点吗?
我必须使用C++。
我有一个数据文件“1.dat”,它具有4列和250行。从文件中单独读取数据并在C++中乘以两列
我需要读取每一行并处理它,例如乘以两列[col1和col2]。
你能提出一种方法来做到这一点吗?
我必须使用C++。
假设文件分隔的数据,你可能会:
ifstream
打开文件std::getline(ifstream, line)
读取线。你可以在循环中做到这一点。行应该是类型std::string
要存储读取的数据,您可以使用vector< vector<double> >
或某种矩阵类。
与vector<vector<double> >
ifstream ifs(filename);
std::vector< std::vector<double> > mat;
if(ifs.is_open())
{
std::string line;
while(std::getline(ifs, line))
{
std::vector<double> values;
std::istringstream iss(line);
double val;
while(iss >> val)
{
values.push_back(val);
}
mat.push_back(values);
}
}
http://www.cplusplus.com/doc/tutorial/files/ 下面是关于如何使用C++读取文件的一些提示,之后您需要将字符串转换为整数或浮点数。
谢谢Bearder。我可以这样做,但无法单独读取所有数据。我想读取每个数据,比如[i] [j]。可以,请给我一些建议吗?谢谢。 – nagendra 2011-03-01 15:45:00
http://stackoverflow.com/questions/236129/how-to-split-a-string – VoronoiPotato 2011-03-01 15:52:45
你怎么有这么远吗? – 2011-03-01 15:35:17