1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Xcode: Datum umwandeln in Integer

Dieses Thema im Forum "iOS-Developer" wurde erstellt von comfreak, 07.03.09.

  1. comfreak

    comfreak Roter Stettiner

    Dabei seit:
    05.11.08
    Beiträge:
    959
    Hallo zusammen!

    In meinem Projekt habe ich ein NSDate und möchte es in einen Integer umwandeln, damit dann so was in etwa rauskommt: 2009 oder 09, am besten wäre es wenn es so aussieht: 090307, also erst das Jahr, dann der Monat und der Tag jeweils als kurze Form mit zwei Ziffern und mit führender 0 bei Werte niedriger als 10. Gibts da so was wie in PHP, wo ich einfach sagen kann:
    Code:
     date ([I]unformatiertesDatum[/I],"ymd");
    Vielen Dank!
    Gruß comfreak
     
  2. MacApple

    MacApple Lord Grosvenor

    Dabei seit:
    05.01.04
    Beiträge:
    3.469
    Willst Du einen Integer haben oder einen String? Die date Funktion von php, die Du hier ansprichst, gibt einen String zurück. Integers haben auch keine führenden Nullen, denn ein Integer ist einfach eine Zahl.

    Wenn's ein String sein soll, schau Dir die Methode descriptionWithCalendarFormat:timeZone:locale: von NSDate an.

    MacApple
     
  3. below

    below Kalterer Böhmer

    Dabei seit:
    08.10.06
    Beiträge:
    2.865
    MacApple hat schon die richtige Frage gestellt, und die richtige Funktion genannt.

    Das kannst den String, den Du dann zurückbekommst natürlich in ein Integer umwandeln

    Alex
     
  4. comfreak

    comfreak Roter Stettiner

    Dabei seit:
    05.11.08
    Beiträge:
    959
    Hallo.

    Natürlich sollte es ein string sein..
    Wie sieht das dann an einem konkreten Beispiel aus:
    Code:
    NSDate* datum = [meinKalender dateValue];
    NSString* neuesdatum = [B][COLOR="Red"]?[/COLOR][/B]
    Was muss da beim ? stehen?

    Vielen Dank!
    Gruß comfreak
     
  5. MacApple

    MacApple Lord Grosvenor

    Dabei seit:
    05.01.04
    Beiträge:
    3.469
    Wie sieht denn das mit ein bisschen Eigeninitiative aus? Es gibt Dokumentation dafür. Hättest Du die gelesen, hättest Du bereits ein konkretes Beispiel.

    MacApple
     
  6. below

    below Kalterer Böhmer

    Dabei seit:
    08.10.06
    Beiträge:
    2.865
    Das ist jetzt aber sehr "Do my work", und eigentlich sollte ich nur noch mit "RTFM" antworten, denn die Antwort wurde ja schon gegeben.

    Ich hab aber heute einen freundlichen Tag, also:

    Code:
    NSString* neuesdatum 
    = [datum descriptionWithCalendarFormat:@"%y%m%d" 
    timeZone:nil 
    locale:nil];
    Für TimeZone gilt RTFM, nil muss für Deinen Fall nicht richtig sein.

    Und ich sehe gerade, MacApple hat Dir ja auch schon gesagt, dass selber lernen klüger macht ;)

    Alex
     
  7. comfreak

    comfreak Roter Stettiner

    Dabei seit:
    05.11.08
    Beiträge:
    959
    Ok, danke, aber da muss ich dann doch nochmal reinlesen ;)

    Gruß comfreak
     
  8. Peter Maurer

    Peter Maurer Carmeliter-Renette

    Dabei seit:
    16.03.04
    Beiträge:
    3.274
    Apple findet uebrigens inzwischen die Kombination aus [NSDate descriptionWithCalendarFormat...] und strftime-artigen Platzhaltern (z.B. "%y-%m-%d"") nicht mehr schick und empfiehlt statt dessen den Einsatz eines NSDateFormatters in Kombination mit einem Unicode-Formatstring (z.B. "yyyy-MM-dd").

    Auf dem iPhone hat man gar keine andere Chance mehr, als diese neue Taktik anzuwenden. Auf dem Mac allerdings bringt das nur etwas, wenn man keine Systeme, die aelter als Mac OS X 10.4 sind, erreichen will. Hier ist das alles ausfuehrlich erklaert.
     
    Jamsven gefällt das.
  9. comfreak

    comfreak Roter Stettiner

    Dabei seit:
    05.11.08
    Beiträge:
    959
    Sowas ist natürlich schöner..
     

Diese Seite empfehlen