我当前的葡萄牙语日期时间格式d MMM yyyy
导致1 dez 2017
,我希望它像这样显示:1 de dez de 2017
当我这样格式化日期时d de MMM de yyyy
我会得到这个1 1e dez 1e 2017
有没有办法绕过迄今为止要转换de
?
我的问题有没有办法像这样格式化日期1 de dez de 2017
?
只需转义d
否则将被识别为day of the month
。
new DateTime(2017, 12, 1).ToString(@"d de MMM de yyyy", new CultureInfo("PT-pt"));
样本
new DateTime(2017, 1, 1).ToString("d 'de' MMM 'de' yyyy", new CultureInfo("PT-pt"));
DateTime
使用自定义格式说明符进行格式化。
您可以通过转义字符来确保字符未格式化为日期/时间的一部分。
有两种转义字符的方法:
字符可用于转义单个字符
'
或"
字符可用于转义字符串。
后者可能更容易使用,因为您可以将格式字符串中的任何单词包装在其中并忘记它。
例如:
DateTime.Now.ToString("d 'de' MMM 'de' yyyy");
de
中的d
具有特殊含义,因此您必须使用反斜杠转义该字母。
这涉及可能与已预定义的日期或时间格式说明符冲突的所有字母。