I have a function that accepts two variables CString
In those variable i recieve strings like "20030910" and "20051231" and I should compare them like dates.
What is the best way to do it? Currently my code is :
BOOL VerifyExpirationDate(CString sExpirationDateFile, CString sExpirationDateGiven)
{ //mora stringovite za datum da bidat 8 karakteri
if (sExpirationDateFile.GetLength() != 8) // YYYYMMDD
return FALSE;
if (sExpirationDateFile.GetLength() != 8) // YYYYMMDD
return FALSE;
COleDateTime tExpirationDateFile(
atoi(sExpirationDateFile.Left(4)),
atoi(sExpirationDateFile.Mid(4, 2)),
atoi(sExpirationDateFile.Mid(6, 2)), 0, 0, 0);
COleDateTime tExpirationDateGiven(
atoi(sExpirationDateGiven.Left(4)),
atoi(sExpirationDateGiven.Mid(4, 2)),
atoi(sExpirationDateGiven.Mid(6, 2)), 0, 0, 0);
if (tExpirationDateFile >= tExpirationDateGiven)
return TRUE;
else
return FALSE;
}
where sExpirationDateFile and sExpirationDateGiven are variables mentioned earlyer. I dont like it because for me is to complicated, to slow and eats too much memory
In those variable i recieve strings like "20030910" and "20051231" and I should compare them like dates.
What is the best way to do it? Currently my code is :
BOOL VerifyExpirationDate(CString sExpirationDateFile, CString sExpirationDateGiven)
{ //mora stringovite za datum da bidat 8 karakteri
if (sExpirationDateFile.GetLength() != 8) // YYYYMMDD
return FALSE;
if (sExpirationDateFile.GetLength() != 8) // YYYYMMDD
return FALSE;
COleDateTime tExpirationDateFile(
atoi(sExpirationDateFile.Left(4)),
atoi(sExpirationDateFile.Mid(4, 2)),
atoi(sExpirationDateFile.Mid(6, 2)), 0, 0, 0);
COleDateTime tExpirationDateGiven(
atoi(sExpirationDateGiven.Left(4)),
atoi(sExpirationDateGiven.Mid(4, 2)),
atoi(sExpirationDateGiven.Mid(6, 2)), 0, 0, 0);
if (tExpirationDateFile >= tExpirationDateGiven)
return TRUE;
else
return FALSE;
}
where sExpirationDateFile and sExpirationDateGiven are variables mentioned earlyer. I dont like it because for me is to complicated, to slow and eats too much memory