gpt4 book ai didi

c# - DateTime.ToString() 不能按预期使用斜杠作为日期分隔符

转载 作者:太空狗 更新时间:2023-10-29 19:50:42 25 4
gpt4 key购买 nike

我想将日期时间转换为“MM/dd/yyyy”,当我转换为这种格式时,日期变得像“xx-xx-xxxx”。我写了这样的代码

  var format = "MM/dd/yyyy HH:mm";
DateTime dt = DateTime.Now;
var dateString = dt.toString(format); // the value i am getting is 05-28-2014 12:47 but i require the 'dateString' value to be `05/28/2014 12:53`.

这有什么问题。

最佳答案

您当前文化的日期分隔符似乎是 - 这就是您得到它的原因。您必须指定 InvariantCulture:

string dateString = dt.toString("MM/dd/yyyy HH:mm", CultureInfo.InvariantCulture);  

参见:The "/" Custom Format Specifier

The "/" custom format specifier represents the date separator, which is used to differentiate years, months, and days. The appropriate localized date separator is retrieved from the DateTimeFormatInfo.DateSeparator property of the current or specified culture.

另一种方法是用\转义/:

string dateString = dt.toString(@"MM\/dd\/yyyy HH\:mm");  

但在我看来,如果您已经知道 / 作为“当前文化的日期分隔符”的特殊含义,最好(就可读性而言)使用正确的 CultureInfo(或 InvariantCulture)代替。

关于c# - DateTime.ToString() 不能按预期使用斜杠作为日期分隔符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23905367/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com