c# - .net 特定于文化的 12/24 小时格式

标签 c# wpf datetime cultureinfo

有没有一种方法可以保留文化特定的日期时间格式但强制 12/24 小时呈现?我知道我可以用实际的日期/时间格式字符串做很多事情,比如 HH:mm:sshh:mm:ss 但我想尊重当前用户文化格式(即 mm/dd/yyyyyyyy/mm/dd 等),只需强制 12/24 小时时间呈现。

最佳答案

我可能会这样做:

        var culture = CultureInfo.CurrentCulture;
        var pattern = culture.DateTimeFormat.LongTimePattern; // or pick which one you want to use;
        var newPattern = pattern.Replace("h", "H").Replace("t", "");
        DateTime.Now.ToString(newPattern); // or use whatever DateTime you want to use

来自聊天:

这里是所有文化的长期模式字符串的列表,以及它们将如何被修改:

Old: hh:mm:ss tt New: HH:mm:ss 
Old: HH:mm:ss 'ч.' New: HH:mm:ss 'ч.'
Old: HH:mm:ss New: HH:mm:ss
Old: H:mm:ss New: H:mm:ss
Old: h:mm:ss tt New: H:mm:ss 
Old: tt h:mm:ss New:  H:mm:ss
Old: h:mm:ss.tt New: H:mm:ss.
Old: HH.mm.ss New: HH.mm.ss
Old: tt hh:mm:ss New:  HH:mm:ss

关于c# - .net 特定于文化的 12/24 小时格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8086890/

相关文章:

datetime - Groovy:TimeDuration - 自定义输出格式

c# - 如何在startup.cs的ConfigureServices方法中正确注入(inject)DbContext实例(ASP.net core 1.1)?

刷新主窗口内的子用户控件后,WPF 主窗口自动关闭

C# 文件移动和覆盖

c# - 后台 worker 没有停止

c# - 对 .Net 应用程序设置框架感到困惑

javascript - 将日期和时间转换为 UTC

javascript - 为什么我得到 d.toLocaleDateString() 的错误输出?

c# - 如何检测应用于 Gtk# TextView 中文本的标签?

c# - 如何从多个 List<> 中获取所有元素?