格式:日/月/年- c#
Console.WriteLine(Convert.ToDateTime("28.12.2022 13:45:04")); //Error
又
系统。FormatException:字符串未被识别为有效的日期时间
我找不到解决办法。你能帮我吗?
DateTime。ParseExact将日期和时间的指定字符串表示形式转换为其等效的DateTime。
DateTime dt= DateTime.ParseExact("28.12.2022 13:45:04", "dd.MM.yyyy HH:mm:ss",
CultureInfo.InvariantCulture);
Console.WriteLine(dt);
指定与日期/时间格式相对应的区域性。例子:
CultureInfo culture = CultureInfo.GetCultureInfo("de-DE");
var date = DateTime.Parse(dateString, culture);
然而,使用TryParse
比Parse
更安全:
If (DateTime.TryParse(dateString, culture, out var date)) {
Console.WriteLine(date);
} else {
Console.WriteLine("Invalid date format");
}
注意,Parse
和TryParse
识别的格式范围比ParseExact
和TryParseExact
更大。例如,如果缺少时间部分或日期包含月份名称,前者也可以工作。
参见:何时使用CultureInfo.GetCultureInfo(String)或CultureInfo.CreateSpecificCulture(String)
你可以得到像" 28/12/2022 " "一个字符串。使用;
yourDateTime.Value.ToShortDateString();
关于计算机设置的本地化。它可以改变你的日期格式类型。你可以使用;
yourDatetime.Value.ToString("dd/MM/yyyy");
String to DateTime
DateTime dt= DateTime.ParseExact("datetimeString", "dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture);