【发布时间】:2018-08-10 12:36:13
【问题描述】:
是否可以用国际化的数字表示来格式化没有年份和月份的 DateTime?
例如new DateTime(2018, 8, 10)(今天)
一方面,我们有“d”代表10.08.2018(德语)或2018/08/10(日语)。
另一方面,我们有“M”表示10. August(德语)或August 10(美国英语)
但我想要的是10.08.(德语)、08/10(日语)、8/10(美国英语)、10/08(英语)
【问题讨论】:
-
@mjwills 谢谢,但据我所知,那些不是国际化的(这是一个词吗?)我必须自己给出顺序和分隔符。
-
谢谢,我也不知道,这就是我问的原因。
-
另见DateTimeFormatInfo——没有像“DayBeforeMonth”这样的属性可以利用。所有类似的特定模式都是单独设置的。 -- 你可以做的就是获取
ShortDatePattern,然后自己测试d是否在M之前,然后准备好自定义格式。请注意,"/"应自动替换为特定于文化的DateSeparator。 -
看来我要么需要为它构建一些复杂的逻辑,要么需要告诉设计师他们需要为“M”或“d”规划更多空间。
标签: c# datetime internationalization date-formatting