2017-01-24 5 views
1

Ich versuche, C# Datetime-Objekt zu formatieren, die ich von einem Web-API-Aufruf in diesem Format erhalten:Format einer C# Datum Zeit bis dd/MM/jjjj momentjs

2017-01-28T00: 00 : 00 + 11: 00

Wie könnte ich diese Datetime zu dd/MM/yyyy im Grunde 28/01/2017 formatieren?

moment("2017-01-28T00:00:00+11:00").format('dd/MM/yyyy')

Jede Idee, warum dieses "Sa/01/yyyy" ergibt? Ich möchte das lösen, ohne Datumsteile manuell zu teilen, da das Zielformat dynamisch ist, dh: TT/MM/JJJJ kann auch MM/TT/JJJJ sein.

Danke für jede Hilfe.

+4

versuchen DD verwenden statt - schon eine Weile her, seit ich momentjs verwendet, aber ich sah nur die [Dokumentation] (http://momentjs.com/docs/) um zu sehen, dass "d" sich auf den Wochentag und "D" auf das Datum des Monats bezieht - während "dd" nicht erwähnt wird, wird "ddd" erwähnt (3 Buchstaben Abkürzung) und 'dddd' (ganzer Tag der Woche) ... vielleicht ist' dd' als Abkürzung aus zwei Buchstaben akzeptabel, aber nicht dokumentiert ... so oder so, Sie möchten 'D' –

+1

verwenden Wenn Sie möchten über * verschiedene Kulturen * formatieren, dann kannst du * 'L' * verwenden. Siehe @ http://momentjs.com/docs/#localized-formats –

Antwort

0

Moment hat einige Formate, die Sie Ihr Date-Objekt zu manipulieren, verwenden können.

Die meisten von ihnen sind folgende, mit Stichtag: 31. Dezember 2016:

  • YYYY-2016
  • YY-16
  • Q-4 (Quartal)
  • MM-12
  • MMM - Dec
  • MMMM - Dezember
  • D/DD-31
  • Do - 31.
  • DDDD-366 (Tag des Jahres)
  • X - 1483142400 (Unix Zeitstempel)
  • x-1483142400000 (Unix-Zeitstempel in ms)

in Ihrem Fall also können Sie format('DD/MM/YYYY')