Datum ausgeben



  • Hallo cpp Forum,
    Ich muss für ein Programm immer das Datum ausgeben. Wie mach ich das ohne das irgendwelche punkte darin sind wie z.B.

    Nicht: 28.12.12

    Sondern: 281212

    Danke für eure Antworten

    Max


  • Mod

    Wo hast du das Datum her? Wie hättest du es denn mit Punkten ausgegeben? Was hindert dich, die Punkte wegzulassen?

    Ansonsten wird auch dies hilfreich sein:
    http://en.cppreference.com/w/cpp/io/manip/put_time
    Oder ohne C++11:
    http://en.cppreference.com/w/cpp/chrono/c/strftime



  • Für C++98 schlage ich vor: Du nimmst einen Manipulator:

    std::ostream& dateConsecutive(std::ostream& os)
    {
        if(os)
        {
            std::time_t secs = std::time(0);
            if( secs != -1 )
            {
                tm* date = std::localtime( &secs );
                os << date->tm_mday << date->tm_mon + 1 << (date->tm_year + 1900) % 100;
            }
        }
        return os;
    }
    

    Es ist dir überlassen, was passiert, wenn die Kalenderdaten nicht geladen werden konnten!
    Momentan passiert da gar nichts, es wird also einfach nichts gemacht.

    Anwendung:

    #include <iostream>
    #include <ctime>
    
    std::ostream& dateConsecutive(std::ostream& os)
    {
        if(os)
        {
            std::time_t secs = std::time(0);
            if( secs != -1 )
            {
                tm* date = std::localtime( &secs );
                os << date->tm_mday << date->tm_mon + 1 << (date->tm_year + 1900) % 100;
            }
        }
        return os;
    }
    
    int main()
    {
        std::cout << dateConsecutive;
    }
    


  • Ich habe ein Programm geschrieben das Kundendaten verwaltet. Wenn ich einen Kunden im Programm speichere(in einer txt) soll nach 3 Monaten ein Druckauftrag mit einem schreiben an den PC gesendet werden. Das Datum in dem dieser Auftrag gesendet werden soll rechnet sich das Programm schon vorher aus in Form von 281212 damit ich die Werte dann besser vergleichen kann dürfen keine Punkte im datum stehen.

    Max



  • Danke sone das ist das nachdem ich gesucht habe vielen Dank.

    Max


Anmelden zum Antworten