将时间转换为.net中的fr-CA - 错误的短时格式字符串?

时间:2014-09-18 20:29:50

标签: c# .net datetime datetime-format

我们正在将WPF应用程序翻译为fr-CA。应用程序中的某些屏幕显示时间使用&#t;'标准时间说明符:

<TextBlock x:Uid="myTextBlock" Text="{Binding MyTimeValue, StringFormat=' {0:t}'}" ></TextBlock>

在fr-ca文化中,这会产生字符串&#34; HH:mm&#34; (如11:00)。但是,我们的翻译人员坚持认为我们应该将时间显示为&#34; HH \ h mm&#34; (如11小时00分)。

根据其他一些SO问题和答案,我查看了DateTimeFormat.GetAllDateTimePatterns(),它返回了所有&#34;标准&#34;的列表。特定文化的模式。我看到所需的格式字符串 出现在该列表中。但是,如何在没有事先知道找到它的情况下以编程方式选择那个?我不想编写自定义代码来支持为fr-ca显示时间。

1 个答案:

答案 0 :(得分:1)

这是“Caractéristiquesculturelleset linguistiquesduQuébec”的摘录

  1. Les heures Lapériodede24 heures constitue la basederéférencepourlaprésentationnumériquede 距离L'heure , 符合标准 ISO 8601:2000 。 L'indication de l'heure est suivie de celle des minutes,les deuxélémentsétantéparésparles deux points (sans e 小号 p 一个 CE)。 例如:17:30(非 下午5点30分,qui对应l'usageaméricain)
  2. 快速翻译,即在小时后插入“h”,对应于显示时间的美国用法。

    可以找到文件here