Sample code for 30+ languages & platforms
C++

Set the Email Date Header to the Current System Date/Time

Demonstrates how to set the Date header field of an email to the computer's current date/time. Note: When an email object is instantiated, the Date header field is automatically added and initialized to the current system date/time. The need to explicitly set the Date header could arise when loading an email from a .eml.

Chilkat C++ Downloads

C++
#include <CkEmail.h>
#include <CkDateTime.h>

void ChilkatSample(void)
    {
    bool success = false;

    CkEmail email;

    //  At this point, a new email object has been instantiated, and it
    //  already has a Date header field containing the current date/time.
    std::cout << "Date: " << email.emailDateStr() << "\r\n";

    //  We can also get the Date header like this:
    std::cout << "Date: " << email.getHeaderField("Date") << "\r\n";

    //  Load a .eml into the email object:
    success = email.LoadEml("myEmlFiles/someEmail.eml");
    if (success != true) {
        std::cout << email.lastErrorText() << "\r\n";
        return;
    }

    //  Show the Date that was in the .eml
    std::cout << "Date: " << email.emailDateStr() << "\r\n";

    //  Now the Date header contains whatever was in the .eml
    //  Let's update it to the current system date/time..

    CkDateTime dateTime;

    dateTime.SetFromCurrentSystemTime();

    success = email.SetDt(dateTime);
    if (success != true) {
        std::cout << email.lastErrorText() << "\r\n";
        return;
    }

    //  Now show that the Date is the current system time:
    std::cout << "Date: " << email.emailDateStr() << "\r\n";
    std::cout << "Date: " << email.getHeaderField("Date") << "\r\n";
    }