A documentação do MSDN para DateTime.ToString está irremediavelmente errada: " Por exemplo, a seqüência de formato" MM / dd / aaaaHH: mm "exibe a seqüência de datas e horas em um formato fixo ... A seqüência de caracteres de formato usa" / " separador de datas, independentemente das configurações específicas da cultura. "
Coronel Panic
Respostas:
243
Barra é um delimitador de data, portanto, ele usará o delimitador de data de cultura atual.
Se você deseja codificá-lo para usar sempre a barra, você pode fazer algo assim:
Escapar da cadeia de caracteres de formato usando barra invertida também funciona: DateTime.Now.ToString ("dd \\ / MM \\ / aaaa");
TomB
61
Passe CultureInfo.InvariantCulture como o segundo parâmetro de DateTime, ele retornará a string conforme o desejado, mesmo em um formato muito especial:
Este código é mais claro do que na resposta aceita (refiro-me ao CultureInfo). Parece pelo menos melhor do que escapar de barras por apóstrofos.
Sergey
2
Definitivamente mais fácil de ler do que usar caracteres de escape. Estou um pouco chocado por não saber o tempo todo que meus formatos de data seriam substituídos!
se o desenvolvedor usar o método tostring com algumas letras como M mss etc., obterá um resultado errado com sua solução, por exemplo, Datetime.Now.ToString ("aaaa / dd / mm / mês", CultureInfo.InvariantCulture) não resultará em 2017/01 / 02 / mês resultará em 01/02/2017 / 2onth
Okan SARICA
@OkanSARICA, se você quiser sufocar a data com "/ Month", faça-o após o método ToString. DateTime.Now.ToString (”aaaa / MM / dd”, CultureInfo.InvariantCulture) + ”/ Month”;
Respostas:
Barra é um delimitador de data, portanto, ele usará o delimitador de data de cultura atual.
Se você deseja codificá-lo para usar sempre a barra, você pode fazer algo assim:
fonte
Passe CultureInfo.InvariantCulture como o segundo parâmetro de DateTime, ele retornará a string conforme o desejado, mesmo em um formato muito especial:
retornará: 28 | 02 | 2014
fonte
Adicione
CultureInfo.InvariantCulture
como argumento:Retornará:
fonte
Se você usa MVC, tables, funciona assim:
fonte
Pergunta / resposta burra, talvez, mas você já tentou
dd/MM/yyyy
? Observe a capitalização.mm
é por minutos com um zero à esquerda. Então eu duvido que é isso que você quer.Isso pode ser útil: http://www.geekzilla.co.uk/View00FF7904-B510-468C-A2C8-F859AA20581F.htm
fonte