27. februar 2006 - 16:40Der er
16 kommentarer og 1 løsning
Test om værdi er gyldig tidsenhed
Hej gutter
En et hjørne af mit program skal jeg teste om en indtastet værdi er en gyldig tidsenhed. Altså:
12:45 = gyldig 12:65 = ugyldig
Det burde være meget nemt at lave. Jeg har her først lavet et array med værdierne for timer og minutter og tester så om den indstastede værdi, svarer til en værdi i array'et og smider derefter en fejlmeddelelse ud hvis ikke det er tilfældet. Jeg får dog en fejlmeddelelse når jeg builder. Er der nogen der kan se hvad der er galt?
Jeg ville nok gøre noget a la: try { DateTime tempDateTime = Convert.ToDateTime(din variabel); return tempDateTime; } catch(Exception ex) { return null; }
Jeg vil holde mig væk fra try - catch til at validere med. Det koster mere end f. eks en if - then konstruktion. Men hvis du er ligeglad med effektivitetten så er det meget simpelt at implementere!
DateTime outParam; string[] test = new string[] { "12:65", "12:45" };
foreach(string s in test) { if (DateTime.TryParse(s, out outParam)) { MessageBox.Show(outParam.ToLongTimeString()); } else { MessageBox.Show("Kunne ikke convert"); } }
Ville stadig holde mig til de indbygede ting........
Enig og hvor er det fedt. Det er indimellem ret behageligt at man oplever hjælpsomme mennesker. Specielt her i DK i denne tid hvor tegnere, labaner og Pia'er ødelægger det for alle os andre.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.