之前我从未使用过istringstream。我之前只有1个分隔符的分割线,所以我不知道如何使用istringstream。我从一个看起来像这样的文件中拆分行:
表,通缉,100
汽车,待售,5000
我需要拆分字符串然后创建一个结构数组。我已经设置了一个结构,我只是不知道如何拆分字符串。我的结构被称为项目,并具有类型:字符串类型,布尔销售,双倍价格。出售,我希望它说1如果它是出售和0如果它是想要的。 基本上,我想拆分它,以便我可以创建新的变量,类型,销售和价格,然后在我的项目结构中创建一个newItem {type,sale,price}并从那里开始。代码示例非常有用。非常感谢。
答案 0 :(得分:1)
使用分隔符分割字符串的简单方法是使用std::getline
。
std::string line = "Table, Wanted, 100"; // Let's say you have read a line from file.
std::istringstream input{line}; // Create an input stream from string.
// Read all characters up until the delimiter ',' on each iteration.
for (std::string token; std::getline(input, token, ',');) {
/* Do something with each token... */
}
的 Live example 强>