如何创建与特定布局匹配的适合区域性的日期字符串?

How do I create culture appropriate date strings that match a specific layout?

提问人:David Thielen 提问时间:11/3/2023 更新时间:11/3/2023 访问量:21

问:

这是 C#(所以 .Net)。我想创建一个日期字符串,该字符串以运行代码的区域性的正确顺序显示,该区域性与以下各项(en_US格式)匹配:

  • ToString(“MMMM d, yyyy”)
  • ToString(“ddd, MMM dd”)

没有像“d”或“f”这样的单一字母等价物可以给我正确的文化输出。有没有办法从en_US文化转变为另一种文化?

C# 日期时间 .net-core 日期时间格式

评论


答:

0赞 Moho 11/3/2023 #1

DateTime.ToStirng有两个接受参数的重载,其中一个也接受格式说明符。 实现接口。例:IFormatProviderCultureInfoIFormatProvider

DateTime.Now.ToString( "d", new CultureInfo("fr-fr") )

评论

0赞 David Thielen 11/4/2023
如果我错了,请纠正我,但这适用于“d”,但不适用于“MMMM d,yyyy”。我问的问题在逻辑上可能是不可能的,因为我们执行“2023 年 11 月 3 日”的法国标准是什么 - 可能不是可以在代码中全面处理的转换。