如何使用逗号将字符串拆分为两个字符串,并存储字符串? (C ++)

时间:2013-03-19 04:14:03

标签: c++

我看看之前是否曾经问过这个问题,但我得到的只是Java的答案。我必须从文件中读取名字和姓氏,格式为(姓氏,名字)。该程序要求我们(除其他外),以​​(firstname lastname)的格式显示名称,用空格而不是逗号。我认为最简单的方法是将字符串拆分成两个较小的字符串,然后按顺序显示它们。我该怎么做呢?我看到了一些BOOST令牌,但我无法使用它,因为程序必须能够在vanilla CodeBlocks上运行。

1 个答案:

答案 0 :(得分:7)

当然,如果不是更优雅的解决方案,可能会更紧凑,但这样做 -

#include <string>

//... read input_str from the file

int pos = input_str.find_first_of(',');
std::string firstname = input_str.substr(pos+1),
      lastname = input_str.substr(0, pos);

std::string output_str = firstname + " " + lastname;