日期格式操作(YYYY / MM / DD-to-MM / DD / YYYY)

时间:2013-10-14 01:18:09

标签: c++ vector formatting substring

好的,所以我使用这种字符串流技术,以便从.txt文件中提取类型,日期,分数等对象,然后将其推回到我的代码中的向量中。 我的问题是输入文件的日期是YYYY / MM / DD格式,我需要将其切换为MM / DD / YYYY,但我不熟悉如何操作。我被告知使用子串方法会有效,但我是C ++的新手,所以有人知道如何解决我的这个问题吗?

void LineData :: Set_Line (const string s)
{
    stringstream temp (s);

    temp >> type;

    temp >> date;

    string max;
    temp >> max;
    max_score = atoi (max.c_str());

    string actual;
    temp >> actual;
    actual_score = atof (actual.c_str());

    ws(temp);
    getline(temp, name);
}

1 个答案:

答案 0 :(得分:0)

这是可以实现的方法之一:

//this will split-up the string
int i = 0;
stringstream ssdate(date); //date needs to be stringstream

while (getline(ssdate, part, '/'))
{
    if(i == 0) year = part;
    if(i == 1) month = part;
    if(i == 2) day = part;
    i++; //counter
}

//now all you have to do is arrage them how you need them
//If you want me to show you that I can