如何解决字符串不被认为是有效的日期时间,因为星期几不正确
将浏览器语言更改为意大利语并选择2020年3月以来的任何日期并使用Convert.toDateTime(date.Text)时,由于星期几是错误的异常,因此我无法将String识别为有效的日期时间。请查看并提供帮助。
谢谢
解决方法
Convert.ToDateTime 使用计算机的当前区域性尝试从字符串到日期的转换。如果您输入的字符串未在当前区域性(或不变式区域性)中表示,则您需要帮助Convert.ToDateTime传递将日期格式化为字符串的区域性。
因此,假设您的文本框包含:
string data = "Martedì 18 Agosto 2020";
那你就可以写
CultureInfo ci = new CultureInfo("it");
DateTime t = Convert.ToDateTime(data,ci);
,
方法Covert.toDateTime()
无法解析任何语言的任何有效日期。我建议您坚持使用ISO-8601日期字符串或Unix时间戳,以将其从浏览器发送到浏览器。在documentation of the function的示例中,您可以看到一些可以解析和无法解析的日期示例。我个人更喜欢Unix时间戳,但是您需要在浏览器中使用momentjs
之类的库来再次使其成为日期对象。如果您想使用字符串,则可能要遵循以下格式:
// Convert a string returned by DateTime.ToString("o").
dateString = "2009-05-01T07:54:59.9843750-04:00";
Convert.toDateTime(dateString);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。