简体   繁体   中英

check & convert from a string to date vb.net

I am a beginner in VB.NET & I am stuck at a very simple thing, Date formats.

I am working on an application which uploads data from excel sheets into sql server database. The application will accept dates only if they are in mm/dd/yyyy format. It should reject all dates otherwise.

Now i am struggling to check its format. Here is my code.

Dim ROHSDate As String
ROHSDate = Trim(filterString(holdingTank))
... 
here i need to check if it is in mm/dd/yyyy format

Please help.

Use DateTime.TryParseExact , which allows you to specify the format - it will attempt to parse it, putting the parsed value into an output parameter on success, and return success/failure:

Dim dt As DateTime
If (DateTime.TryParseExact(ROHSDate, "mm/dd/yyyy", \
                           CultureInfo.InvariantCulture, \
                           DateTimeStyles.None, \
                           Out dt))
    UseDateTime(dt)
End If

Obviously, add Else clauses etc if you need them.

(I believe in modern VB the line continuations may be unnecessary, but hey... hopefully you get the point.)

Note that I've explicitly used CultureInfo.InvariantCulture so that if the code is running on a machine which uses different date separators or a different calendar, it won't make any difference.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM