我正在开发一个应用程序的本地化,其中自定义模式用于格式化日期时间。
一个例子是: dd-MM HH:mm
我需要为日期获取此自定义格式的本地化版本,以便我使用数字和时间获取日期,基本上使用本地订单(dd MM或MM dd)和本地分隔符的日期和时间
这是相当微不足道的,只要我使用默认格式,但只要我偏离这些格式,格式就会变硬编码。
有什么想法吗?
谢谢,Jonas
编辑: 我有cultureInfo对象,问题是当我做一个DateTime.ToString(“ES-es”)时,我得到太多信息 - 我只需要一个月+日,但是使用默认的ToString,我得到年+月+天
再次编辑: 我看到如何为我使用的每个CultureInfo对象更改ShortDate模式。但是,在某些情况下我也需要默认的ShortDate模式,所以不幸的是,改变它会让我遇到另一个相同的问题。
最终编辑:万一有人关心。我从来没有找到解决方案,所以我最终编写了一个静态函数来检查当前的CultureInfo,并返回正确格式化的日期,sans year。
答案 0 :(得分:4)
查看DateTimeFormatInfo类(CultureInfo.DateTimeFormat属性),特别是属性DateSeparator,TimeSeparator,ShortDatePattern。
答案 1 :(得分:2)
也许你可以试试这个:
DateTime.Now.ToString(new System.Globalization.CultureInfo(Thread.CurrentThread.CurrentCulture.Name));
如果我想要显示特定文化的时间,我会这样做:
DateTime.Now.ToString(new System.Globalization.CultureInfo("ES-es"))
cultureinfo充当IFormatProvider。
答案 2 :(得分:-1)
CultureInfo课程是开始寻找的好地方。