【发布时间】:2016-05-01 22:31:10
【问题描述】:
我想从具有以下格式的文本文件中读取行:a r3, r2, r1 并且我想将其拆分为单独的部分,因此我有一个单独保存 a、r3、r2 和 r1 的变量,所以我需要删除空格和逗号。我不知道该怎么做。我四处搜索,但只能找到带有预定义字符串的示例(如this)。
我知道如何从文件中读取文本并将其放入 char 数组中,但理想情况下我希望将一行的每个元素放入一个单独的变量中。
比如:
#include <iostream>
#include <string>
#include <fstream>
using namespace std;
void main()
{
string var1, var2, var3, var4;
ifstream inFile("myfile.txt");
if (inFile.is_open()){
while (!inFile.eof()){
inFile >> var1 >> var2 >> var3 >> var4;
}
}
}
但它处理空格、逗号和换行符的地方。有关如何执行此操作的任何建议?
【问题讨论】:
-
string.replace()?逗号为空。或者更好的string.erase()逗号。string.pop_back()最后一个字符?
标签: c++ parsing fstream delimiter