22. marts 2001 - 10:24Der er
6 kommentarer og 1 løsning
Hvordan konverteres en string til en dato
Jeg indlæser en tekstfil i et array. En af kolonnerne i arrayet skal kontrolleres for om, det er en korrekt dato, men i og med der er tale om tekst/variant kan jeg ikke formatere det til en dato for kontrol. Nogle gange ser datoen måske sådan ud: 20010101 andre gang kan den se sådan ud 01012001 og måske også andre versioner. Hvordan kan jeg kontrollere om ovennævnte er en dato?????
Hvis du kan stille en teoretisk korrekt beskrivelse op, så skal jeg vise dig, hvordan du programmerer dig ud af det. Men sålænge du ikke med sikkerhed kan sige, hvilke forskellige kombinationer af dag, måned og år du vil kunne komme ud for, så er der heller ikke nogen løsning fordi:
Det hjælper jo bare ikke noget, når du ikke på forhånd ved, hvilke positioner i strengen, der betyder hvad.
Pånær en lille fejl i din sætning (\",6,2\" skal være \",7,2\") så antager du at de 4 første tegn er året. Hvem siger det er tilfældet ?? Det kan da lige så godt være de sidste 4 tegn, der angiver året !!! Det er lige netop det, der gør sagen umulig !!
Eller kan du bare konvertere strengen via CDate! Så sørger maskinen for at der kommer en Dato ud af strengen men så vil forskellige maskiner fortolke datoen forskelligt afhængigt af dato formatet!!
Jeg siger mange tak for svarene. Jeg har også konstateret, at det er en umulig opgave når man ikke ved hvorledes datoen står. Med hensyn til CDate, så har jeg prøvet denne funktion, men feks. på ovennævnte eksempler fejler den.
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.