tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
5
ZUGRIFFE
3997
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Fridulin Fridulin ist offline Mitglied Brokat
    Registriert seit
    Dec 2004
    Beiträge
    309
    Hallo Leute,

    ich bräuchte einmal eure Hilfe. Ich habe bzw. möchte gerne ein Geburstagserrinerungs Programm schreiben, welches anzeigt wann der nächste Geburstag ansteht und wie lange es bis dahin noch dauert. Es soll die Schaltjahre mit einbeziehen.
    Also ich habe mehrere Daten, welche ich nach Gebrustags Tag.Monat.Jahr aufgelöst habe, sowie natürlich das aktuelle Datum.
    Ich weiß nun leider nicht wie ich das am Besten errechnen lassen kann.

    Über jede Hilfe wäre ich sehr Dankbar.

    Viele Grüße und vielen Dank schon einmal im vorraus.
    Fridulin

    PS: Ich Programmiere mit C#


    Edit: Gibt es vielleicht eine Möglichkeit ein Geburstag in Tagen auszurechnen?
    Geändert von Fridulin (02.07.06 um 18:14 Uhr)
     

  2. #2
    Avatar von Norbert Eder
    Norbert Eder Norbert Eder ist offline Mitglied Diamant
    Registriert seit
    Feb 2004
    Ort
    Österreich / Graz
    Beiträge
    5.137
    Blog-Einträge
    51
    Schau dir mal die Klassen DateTime und TimeSpan genauer an.
     

  3. #3
    Fridulin Fridulin ist offline Mitglied Brokat
    Registriert seit
    Dec 2004
    Beiträge
    309
    Hallo,

    vielen Dank für deine Hilfe. Ich habe auch schon das Richtige gefunden, nur leider weiß ich nicht wie man einen string convertiert zu DateTime.
    Ich habe jetzt folgendes:
    Code :
    1
    2
    
    string geb_aus = aktuell.Subtract(arrZeilen[i].Substring(0,6));
    MessageBox.Show(geb_aus);

    Viele Grüße und vielen Dank noch einmal
    Fridulin
     

  4. #4
    Fridulin Fridulin ist offline Mitglied Brokat
    Registriert seit
    Dec 2004
    Beiträge
    309
    Hallo,

    ich wollte nur mitteilen das ich jetzt alleine darauf gekommen bin.
    Ich habe es wie folg gelöst:
    Code :
    1
    2
    3
    4
    5
    
    TimeSpan geb_datum_rechnen;
    DateTime geb_datum = new DateTime(jahr_a, monat_geb, tag_geb); 
    DateTime datum_aktuell = new DateTime(jahr_a, moat_a, tag_a); 
    geb_datum_rechnen = geb_datum.Subtract(datum_aktuell);
    MessageBox.Show(geb_datum_rechnen.ToString());
    Ich muß nur noch die Ausgabe ein bischen editieren, beim TimeSpan funktioniert ("dd") ja leider nicht. Aber das bekomme ich schon hin.

    Viele Grüße und vielen Dank nocheinmal für den Tipp.
    Fridulin
     

  5. #5
    Avatar von Christian Kusmanow
    Christian Kusmanow Christian Kusmanow ist offline Mitglied Diamant
    Registriert seit
    Aug 2004
    Ort
    Aachen (NRW)
    Beiträge
    2.208
    Blog-Einträge
    15
    Hallo Fridulin!

    Zitat Zitat von Fridulin
    Ich muß nur noch die Ausgabe ein bischen editieren, beim TimeSpan funktioniert ("dd") ja leider nicht. Aber das bekomme ich schon hin.
    Der TimeSpan unterstützt das auch nicht.
    Guck mal hier hinein:
    Strings formatieren mit C# (Kurzreferenz)
    String Formatting in C#
    Code csharp:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    
    DateTime geb_datum = new DateTime( 1981, 06, 16 ); 
    DateTime datum_aktuell = new DateTime( DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day );
    TimeSpan alter_zeitspanne = datum_aktuell.Subtract( geb_datum );
    DateTime alter_gesamt = new DateTime( alter_zeitspanne.Ticks );
     
    MessageBox.Show(
        string.Format(
        "Tage: {1:#0,000}{0}Stunden: {2:#0,000}{0}Minuten: {3:#0,000}{0}Sekunden: {4:#0,000}{0}Genaues Alter:{5}",
        Environment.NewLine,
        alter_zeitspanne.TotalDays,
        alter_zeitspanne.TotalHours,
        alter_zeitspanne.TotalMinutes,
        alter_zeitspanne.TotalSeconds,
        alter_gesamt.Year -1 ) );
    MfG,
    cosmo
     
    MfG,
    Christian

    Wer sein Problem definiert, hat es schon halb gelöst!

    Bitte markiert eure Themen als erledigt. Sonst macht so ein Forum als Nachschlagewerk keinen Sinn.

    The Code Project! - C# Programming | C# / VB.NET Pendants

    Regeln + Netiquette

    Liebe FIAEs, verlasst euch nicht auf das was in der Berufsschule "vermittelt" wird
    und vor allem nicht auf das, was euch die IHK dazu erzählt!
    Die haben so viel Ahnung von dem Gewerk, wie der Bundestag vom Haushalt...

  6. #6
    Fridulin Fridulin ist offline Mitglied Brokat
    Registriert seit
    Dec 2004
    Beiträge
    309
    Hallo Cosmo,

    danke für deine Antwort. Das kann ich sehr gut gebrauchen, ich hatte es vorher einfach mit split gesplittet. Er hat mit meinen Programm Text nur die Tage ausgerechnet, war auch ok, aber deine Lösung ist natürlich besser. So kann ich auch noch die Monate bis dahin Anzeigen.
    Code :
    1
    2
    3
    
    char[] Split = {'.'};
    string [] geb_zeit = geb_datum_rechnen.ToString().Split(Split);
    tage_zum_geb = Convert.ToInt32(geb_zeit[0]);

    Viele Grüße und halte die Ohren Steif
    Fridulin
     

Ähnliche Themen

  1. nächster 3D-Contest?
    Von xcEmUx im Forum Grafik-Contests
    Antworten: 22
    Letzter Beitrag: 25.06.09, 20:39
  2. nächster tag von $datum
    Von Thundy im Forum PHP
    Antworten: 2
    Letzter Beitrag: 04.02.09, 01:06
  3. Nächster Contest
    Von OnlyFoo im Forum Grafik-Contests
    Antworten: 58
    Letzter Beitrag: 29.02.08, 15:54
  4. Ende Mc nächster Mc?
    Von BillaBong im Forum Flash Plattform
    Antworten: 3
    Letzter Beitrag: 20.02.06, 21:33
  5. 2 Fragen -> Landkarte ; Geburstag ?
    Von Trash im Forum PHP
    Antworten: 11
    Letzter Beitrag: 04.04.02, 11:56