[英]Reading from multiple lines from a txt file in a single iteration
我目前正在使用链表,我的节点有 4 个元素(其中每个元素都是变量类型的字符串)。 在 a.txt 文件中有几组文本,每组有 4 行,例如:
依此类推……我想要实现的是在一次迭代中读取四行并将它们提供给一个节点,然后让程序迭代直到没有更多的行。
因此,如果阅读上面的示例,我们的节点将被留下;
Node1.string1 = 这是第一行;
Node1.string2 = 这是第二行;
Node1.string3 = 这是第三行;
Node1.string4 = 这是第四行;
在互联网上寻找一种方法时,我找到了一种方法可以做到这一点,并告诉“ifstream 阅读器”在下一次迭代之前执行 '\n',但我丢失了这个页面,似乎找不到它
很容易
while (getline(in, node.string1) &&
getline(in, node.string2) &&
getline(in, node.string3) &&
getline(in, node.string4))
{
...
string dummy;
getline(in, dummy); // skip blank line
}
您也可以使用in.ignore(std::numeric_limits<std::streamsize>, '\n');
跳过空白行,但是读入一个虚拟变量可以让您轻松检查空白行是否真的是空白。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.