![](/img/trans.png)
[英]DateTime ToString(“dd/MM/yyyy”) returns dd.MM.yyyy
[英]DateTime: how to display as DD.MM.YYYY?
我有DateTime变量,我想将其转换为字符串“DD.MM.YYYY”请注意,值必须用“点”符号分隔。
当然我可以做手工字符串组合。 但我想知道我是否可以使用DateTime.ToString()
来进行必要的转换。
是的你可以:
string formatted = dt.ToString("dd'.'MM'.'yyyy");
现在在这种情况下,实际上并不需要引号,因为自定义日期/时间格式字符串不以任何特殊方式解释点。 但是,我喜欢明确 - 如果改变'。' 例如,对于':',当它被引用时,它将保留显式字符,但不引用它将是“特定于文化的时间分隔符”。 对我来说,“是否”并不完全明显。 将被解释为“文化特定的小数分隔符”,因此引用。 当然,你可能觉得它超过了顶层 - 这完全是你的决定。
您可能还想指定不变文化,只是为了消除任何其他疑点:
string formatted = dt.ToString("dd'.'MM'.'yyyy", CultureInfo.InvariantCulture);
(此时点周围的引号变得不那么相关,因为“。”无论如何都是不变文化中的小数分隔符。)
是的,您可以像这样使用DateTime.ToString:
myDateVariable.ToString("dd.MM.yyyy");
请注意,您必须在此处使用大写MM,因为mm的计算结果为分钟而不是几个月。
这是您的另一种选择:
DateTime.Now.ToString("d", new CultureInfo("de-DE"))
德国的使用.
作为日期分隔符。
您可以格式化日期,如下所示:
date.ToString("dd.MM.yyyy")
格式化数字时.
将根据使用的CultureInfo
更改,但在格式化日期时不会更改。
如果要根据代码分析规则CA1304验证代码:指定CultureInfo ,即使对于此特定格式无关紧要,您也必须使用不变文化:
date.ToString("dd.MM.yyyy", CultureInfo.InvariantCulture)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.