包含空格

时间:2016-10-08 13:38:27

标签: c++ string

我正在尝试从文件中读取输入。我有这样的行: “Peter Brown Ashley Granger”。有两个空字符串,name1和name2。我想让Peter Brown成为名字1,而Ashley Granger则是名字2。我怎样才能做到这一点 ?

2 个答案:

答案 0 :(得分:0)

阅读这两部分,然后将它们放在一起。

这些方面的东西:

std::string full_name;
std::string part1;
std::string part2;
if (stream >> part1 >> part2)
{
    full_name = part1 + " " + part2;
}

答案 1 :(得分:0)

你可以创建三个字符串sFamilyName,sFirstName,sFullName,所以使用cin输入姓氏和名字,在白色空格处停止,然后在字符串中连接两个全名:

#include <iostream>
#include <fstream>
using namespace std;


int main()
{   
    string sFamilyName, sFirstName, sFullName;
    ifstream in("data.txt");

    while(in >> sFamilyName >> sFirstName)
    {
        sFullName = sFamilyName + " " + sFirstName; 
        cout << sFullName << endl;
    }

    in.close();
    return 0;
}