4
我想阅读多列,不同变量类型的文件。列数不确定,但在2或4之间。因此,举例来说,我有一个文件:C++多列阅读文件
- 字符串INT
- 串INT串双
- 串INT串
- 串INT串双
谢谢!
我修改了列的数量,将其数量修改为原来写入的2或5之间,而不是4或5。
我想阅读多列,不同变量类型的文件。列数不确定,但在2或4之间。因此,举例来说,我有一个文件:C++多列阅读文件
- 字符串INT
- 串INT串双
- 串INT串
- 串INT串双
谢谢!
我修改了列的数量,将其数量修改为原来写入的2或5之间,而不是4或5。
你可以先阅读std::getline
std::ifstream f("file.txt");
std::string line;
while (std::getline(f, line)) {
...
}
再行解析此行以stringstream
std::string col1, col3;
int col2;
double col4;
std::istringstream ss(line);
ss >> col1 >> col2;
if (ss >> col3) {
// process column 3
if (ss >> col4) {
// process column 4
}
}
如果列中可能包含不同的类型,你必须先读入一个字符串,并然后尝试确定适当的类型。
所以你想让我们写你的代码?你不付钱给我们?因此,请在这里进行研究并提出问题,以了解您在此过程中遇到的具体问题。 – 2013-03-04 16:45:39
柱子是如何分开的?如果使用空格(空格或制表符),那么普通的输入操作符'>>'可以正常工作。 – 2013-03-04 16:45:45
*列数是不确定的,但在4或5之间* ---但您的示例显示第一行只包含2列,而没有一列包含5列! – Praetorian 2013-03-04 16:47:37