Slik konverterer tekst til en dato i VB
Ofte er det nødvendig i Visual Basic for å lese en grunnleggende strengrepresentasjon av en dato og tid fra brukeren eller fra en fil og konvertere denne informasjonen til Visual Basic Dato objekt for å vise det i et annet format. Selv på overflaten tekst-til-dato konvertering virker enkelt, det er vanskeliggjort av de ulike formatene som brukes for datoer i forskjellige steder.
Bruksanvisning
1 Opprett et nytt prosjekt ved å klikke på "File" og "New Project". Velg "Windows Forms Project."
2 Dobbeltklikk på "tekstboksen" komponent i "verktøykassa" for å legge den til i prosjektet. Deretter dobbeltklikker du på "Button" komponent i "verktøykassa". Den tekstboksen vil tillate deg å skrive inn en dato, og knappen blir klikket for å signalisere konvertering av teksten for datoen inn en VB dato objekt.
3 Dobbeltklikk på knappen som du har lagt til prosjektet for å skape et klikk arrangement som heter "button1_click." Lim inn følgende kode i så fall:
Dim dateString As String = TextBox1.Text
Dim vbDate Som Dato
Dim kultur = System.Globalization.CultureInfo.GetCultureInfo ( "en-US")
Dim resultat som boolsk = Date.TryParse (dateString, kultur, System.Globalization.DateTimeStyles.None, vbDate)
Hvis (Ikke resultere) Deretter
MessageBox.Show ( "Kunne ikke tolke datoen for" & dateString)
Ellers
MessageBox.Show ( "Suksess. Dato er" & vbDate.ToLongDateString)
Slutt om
Dette vil forsøke å analysere dato teksten i henhold til de kulturelle normene for amerikansk engelsk ( "en-US"). Vanligvis betyr dette at datoer er forventet å følge formatet måned, dag og år, i stedet for dag, måned og år for vanlig i mange andre deler av verden. En annen akseptert format er år, måned og dag, siden dette formatet er mye brukt av datasystemer for enkelt å sortere etter dato. Hvis det kan analysere dato, presenterer det en melding som gjør nærmere rede for analysert dato. Ellers presenterer det en feilmelding.
Hint
- Hvis du er sikker på at søknaden din vil forsøke å analysere datoer bare for kulturen eller sted innfødt til datamaskinen som kjører programmet, kan du erstatte:
- Date.TryParse (dateString, kultur, System.Globalization.DateTimeStyles.None, vbDate)
- med enklere:
- Date.TryParse (dateString, vbDate)