如何获取已解析字符串的格式

发布于 2024-11-25 07:31:00 字数 186 浏览 1 评论 0原文

DateTime.Parse 接受一个字符串并返回等效的 DateTime。

有没有办法获取解析器使用的格式?

例如,7/19/2011 将返回 M/dd/yyyy,而 19-7-2011 将返回 dd-M-yyyy。

如果 DateTime.TryParseExact 也返回正在使用的格式,那么它对我有用。

DateTime.Parse takes a string and returned the equivalent DateTime.

Is there a way to get the format being used by the parser?

For example, 7/19/2011 would return M/dd/yyyy while 19-7-2011 would return dd-M-yyyy.

DateTime.TryParseExact would work for me if it also returned the format being used.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

转瞬即逝 2024-12-02 07:31:00

这是不可能的,因为 DateTime 格式和特定​​输出之间的映射不是同构的(每个输出没有到单一格式的反向映射) - 仅考虑 11-07-2011 的情况 -这是 dd-MM-yyyy 还是 MM-dd-yyyy?

This is not possible because the mapping between a DateTime format and a particular output is not isomorphic (there is no inverse mapping to a single format for each output) - consider just the case 11-07-2011 - is this dd-MM-yyyy or MM-dd-yyyy?

離人涙 2024-12-02 07:31:00

请参阅http://msdn.microsoft.com/en-us/library/1k1skd40。 aspx 特别是备注部分。

获取所需格式的最佳方法是阅读文档。

See http://msdn.microsoft.com/en-us/library/1k1skd40.aspx Specifically the Remarks section.

The best way to get the formats that it looks for is to read the docs.

拥抱影子 2024-12-02 07:31:00

DateTime.Parse 使用当前线程的当前区域性。
Thread.CurrentThread.CurrentCulture.DateTimeFormat 将为您提供 DateTimeFormatInfo 的只读实例,您可以使用它来检查格式。

The property ShortDatePattern is the one you are looking for.

This addresses your question regarding the format being used by the parser but there is no way to get the format after the fact.

DateTime.Parse uses the current culture of the current thread.
Thread.CurrentThread.CurrentCulture.DateTimeFormat will give you a readonly instance of DateTimeFormatInfo that you can use to inspect the format.

The property ShortDatePattern is the one you are looking for.

This addresses your question regarding the format being used by the parser but there is no way to get the format after the fact.

┾廆蒐ゝ 2024-12-02 07:31:00

循环遍历一次将一个格式传递给 DateTime.TryParseExact 的格式列表。

当您最终获得真实值时,您就确切地知道.Net 将使用哪种格式来解析它。

Loop through a list of formats that you pass one at a time to DateTime.TryParseExact.

When you finally get a true value then you know exactly which format .Net would use to parse it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文