[C#] Datum validatie

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Dag allemaal,

Ik zou graag dit datum formaat willen valideren :

Datum : 20100813T150000
Formaat : yyyyMMddThhmmss

Ik heb wat zitten testen met standaard DateTime object maar ik kom tot de conclusie om alles op te splitsen en dan deze opsplising een datum te genereren die correct zo zijn.

Hebben julie andere gedachten ?

Acties:
  • 0 Henk 'm!

  • CH4OS
  • Registratie: April 2002
  • Niet online

CH4OS

It's a kind of magic

Waarop wil je het formaat valideren dan?

Acties:
  • 0 Henk 'm!

  • boe2
  • Registratie: November 2002
  • Niet online

boe2

'-')/

regex of DateTime.TryParse, take your pick :?

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind.' - Pratchett.


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
CptChaos schreef op vrijdag 13 augustus 2010 @ 15:41:
Waarop wil je het formaat valideren dan?
Gewoon valideren of het aan mijn datetime format voldoet.

Acties:
  • 0 Henk 'm!

  • Icekiller2k6
  • Registratie: Februari 2005
  • Laatst online: 20:02
Verwijderd schreef op vrijdag 13 augustus 2010 @ 15:37:

Datum : 20100813T150000
Formaat : yyyyMMddThhmmss
dus char 0 tem 3 = jaar, char 4 tem 5 is maand 6&7 dag etc
wat je doet is, 5 mag nooit groter zijn dan 2, 4mag nooit groter zijn dan 1, etc..
waarbij je gewoon per char checked... uiteraard zal er vast wel een bestaande functie zijn zoals hierboven vermeld.. maar als je echt eigen code wilt gebruiken moet je zo werken in mijn ogen

MT Venus E 5KW (V151) P1 HomeWizard | Hackerspace Brixel te Hasselt (BE) - http://www.brixel.be | 9800X3D, 96GB DDR5 6000MHZ, NVIDIA GEFORCE 4090, ASRock X670E Steel Legend, Seasonic GX1000


Acties:
  • 0 Henk 'm!

  • lier
  • Registratie: Januari 2004
  • Laatst online: 20:01

lier

MikroTik nerd

Is het niet veel eenvoudiger om gebruik te maken van

code:
1
DateTime.TryParse(String, DateTime)


Die valideert en geeft je ook nog (gratis) een DateTime object terug...

;)

Eerst het probleem, dan de oplossing


Acties:
  • 0 Henk 'm!

  • Feanathiel
  • Registratie: Juni 2007
  • Niet online

Feanathiel

Cup<Coffee>

Met DateTime.ParseExact(string, string, IFormatProvider) kun je een eigen formaat aangeven. Dit formaat is hetzelfde als dat gebruikt wordt bij het omzetten naar een string. Let wel op dat een ander formaat dan niet meer veroorloofd is.

Acties:
  • 0 Henk 'm!

  • Korben
  • Registratie: Januari 2001
  • Laatst online: 13-07 01:53

Korben

() => {};

Feanathiel schreef op vrijdag 13 augustus 2010 @ 16:25:
Met DateTime.ParseExact(string, string, IFormatProvider) kun je een eigen formaat aangeven. Dit formaat is hetzelfde als dat gebruikt wordt bij het omzetten naar een string. Let wel op dat een ander formaat dan niet meer veroorloofd is.
Sinds .NET 2.0 kun je ook DateTime.TryParseExact doen, zodat je geen exception handling hoeft te doen, aangezien het hier om validatie gaat. Overigens is er ook een overload waarbij je een klont aan mogelijke formaten kunt opgeven, waarbij de functie simpelweg al die formaten afloopt om te kijken of de opgegeven string te parsen is als een DateTime volgens dat formaat.

.oisyn: Échte programmeurs haten PHP met een passie. Ben jij soms geen echte programmeur?


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik ga eens naar deze ParseExact en Try kijken.
Pagina: 1