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)