2009-01-20 8 views
20

У меня есть эта функция ...Ведущая Нулевой Формат даты C#

private string dateConvert(string datDate) 
{ 
     System.Globalization.CultureInfo cultEnGb = new System.Globalization.CultureInfo("en-GB"); 
     System.Globalization.CultureInfo cultEnUs = new System.Globalization.CultureInfo("en-US"); 

     DateTime dtGb = Convert.ToDateTime(datDate, cultEnGb.DateTimeFormat); 
     datDate = dtGb.ToString(cultEnUs.DateTimeFormat.ShortDatePattern); 

     return datDate; 
} 

Но я хочу его с ведущим нулем еще на более низких цифрах (1-9), так что дата 11.09.2009 (мм -dd-yyyy) ...

Теперь, если я не преобразовал его, используйте строку string.Format ("{0: d}", dateVar), как это сделать при преобразовании?

***** ***** Решение

Используется немного измененная версия ответа ниже (то есть тот, который делал бы).

Convert.ToDateTime(datDate).ToString("MM-dd-yyyy"); 
+1

Чтобы задать глупый вопрос, есть ли причина, по которой вы не разборе это, а затем сохранить его в качестве значения даты, пока вам нужно представить его обратно пользователю? –

+1

Его для создания deeplink, отвечающего требованиям стороннего приложения, которое мы используем. Это часть более крупного скрипта, облегчающего соединение с партнерами. Английская компания, индийские разработчики, формат даты США. Перейти на рисунок. –

ответ

42
return dateTimeValue.ToString("MM-dd-yyyy"); 
+2

Согласовано - от http://msdn.microsoft.com/en-us/library/system.datetime.toshortdatestring(VS.85).aspx ShortDatePattern EN-US - это «M/d/yyyy», который будет обрезать ведущие нули и использовать «/» в качестве разделителя не «-». –

+0

@Zhaph: дата перерисовывается и передается по URL-адресу, поэтому - требуется разделение. –

+1

Это не сработало для моих целей (в целом), но изменило его на ... Convert.ToDateTime (datDate) .ToString ("MM-dd-yyyy"); работал. Спасибо –

2

не могли бы вы использовать string.Format после того, как вы сделали преобразование?

т.е. return string.Format("{0:d}", datDate);

+0

То, что я догадался, но ввод 20-03-2009 произведено 3-20-2009 –

+0

Да, не знаю, о чем я думал, ответ Мехрдада - тот, который должен работать –

Смежные вопросы