【问题标题】:Get Short Date Format/Style/Structure获取短日期格式/样式/结构
【发布时间】:2017-02-10 14:52:06
【问题描述】:

假设我的系统日期是 2014-02-10 并且我已经在 Internet Information System 上发布了我的应用程序。现在使用 DateTime.Now.ToShortDateString 方法我可以获得像 2014-02-10 这样的日期,但是如何获得日期的模式/样式/结构(例如 yyyy-MM-dd)?它应该与当前的文化无关。

如果我将日期更改为 2014 年 2 月 10 日,那么我应该得到 dd-MMM-yyyy。 解决方案是什么?感谢您的建议..

【问题讨论】:

  • 想想吧。您的 VB 代码在服务器上执行。每个客户端系统,无论在世界的哪个地方,都会向执行 VB 代码的一台服务器发出请求。该服务器如何知道这些客户端机器上的默认短日期格式是什么?执行 VB 代码以生成 HTML 代码,然后发送到客户端。如果 VB 代码正在生成日期文本,那么当 HTML 代码到达客户端时,再执行任何特定于客户端的操作都为时已晚。
  • 您需要在客户端上执行一些 javascript 代码来生成文本,以便提供特定于客户端的格式。我不知道 javascript 代码是否或如何访问系统日期格式,但您可以在网上搜索。
  • @ jmcilhinney...我说的是服务器日期模式,而不是客户端 PC 格式..我想要服务器机器日期模式,如 MM-dd-yyyy 或 dd/MM/yyy 或类似这是代码运行的地方..

标签: asp.net vb.net


【解决方案1】:

啊,我明白了。我以为您是在说您想格式化日期值,但似乎您是在说您实际上想要格式字符串。在这种情况下,您需要使用获取适当的DateTimeFormatInfo 对象并获取其ShortDatePattern 属性。您可以使用System.Globalization.CultureInfo.CurrentCulture.DateTimeFormatSystem.Globalization.CultureInfo.InvariantCulture.DateTimeFormat 来获取DateTimeFormatInfo

【讨论】:

  • @jmcilhinney..你能解释一下吗?我已经尝试过了..但是得到了像 MM/dd/yyyy 这样的扭曲模式,而不是 yyyy--MM-dd。我在字符串中存储了 DateTime.Now.ToShortDateString() 的值
猜你喜欢
  • 2013-04-19
  • 2021-04-03
  • 1970-01-01
  • 2017-08-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-04
  • 1970-01-01
相关资源
最近更新 更多