转换时,日期时间给出错误

C S*_*per 3 .net c# vb.net asp.net visual-studio-2008

我有这种形式的字符串:19/8/1988

注意: String DateOfBirth=" 19/8/1988"

当我使用Datetime.parse(DateOfBirth)它给我invalid dateformat error.

我也无法做到 cdate(DateOfBirth)

当我输入格式为mm/dd/yyyy的字符串,即8/19/1988它不会给我错误.

请帮我将字符串转换为日期mm/ddd/yyyy格式.

Tim*_*ter 6

小写mm表示分钟而不是月份,您需要使用大写M(单个字符).

但是,你还需要使用ParseExact具有CultureInfo.InvariantCulture.否则,您当前的文化用于获取日期分隔符,这不一定/(在许多国家/地区.).

所以这适用于任何文化:

DateTime.ParseExact("19/8/1988", "dd/M/yyyy", CultureInfo.InvariantCulture)
Run Code Online (Sandbox Code Playgroud)

Demo

"/"自定义格式说明符

如果要验证给定的日期字符串,可以使用DateTime.TryParseExact:

DateTime dt; 
if(DateTime.TryParseExact("19/8/1988", "dd/M/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out dt)) 
{
    // success, dt contains the correct date now
} 
else 
{
    // not a valid date 
}
Run Code Online (Sandbox Code Playgroud)