我有DateTime变量,我想将其转换为字符串“DD.MM.YYYY”
请注意,这些值必须用“点”号分隔。

当然,我可以手动进行字符串合成。但我想知道我是否可以使用DateTime.ToString()做所需的转换。

最佳答案

是的你可以:

string formatted = dt.ToString("dd'.'MM'.'yyyy");

现在,在这种情况下,实际上并不需要引号,因为custom date/time format strings不会以任何特殊方式解释点。但是,我想明确指出-如果更改为'。例如,对于':',则在使用引号时,它将保留显式字符,但不引号时,将使用“文化特定的时间分隔符”。对我来说,不是完全清楚。是否会被解释为“特定于文化的小数点分隔符”,因此使用引号。您可能会觉得这很重要-这完全是您的决定。

您可能还想指定不变的区域性,只是为了消除任何其他疑问:
string formatted = dt.ToString("dd'.'MM'.'yyyy", CultureInfo.InvariantCulture);

(这时,点周围的引号变得不那么相关了,因为“。”始终是不变区域性中的小数点分隔符。)

关于c# - DateTime : how to display as DD. MM.YYYY?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3804067/

10-11 22:31
查看更多