Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > DateTime Format


Автор: Edd 23.1.2008, 12:37
Код

DateTime.Now.ToString() // выводит: 2008.01.23. 11:24:17

Как сделать чтобы "2008.01.23 11:24:17", без точки после дня даты? Не меняя региональные настройки и не делая следующего:
Код

string DateNow;
DateNow = DateTime.Now.Year + "." + DateTime.Now.Month + "." + DateTime.Now.Day + " " + DateTime.Now.Hour + ":" + DateTime.Now.Minute + ":" + DateTime.Now.Second;

Автор: 1stain 23.1.2008, 12:44
Код

Console.WriteLine(DateTime.Now.ToString("yyyy.MM.dd HH:mm:ss"));

Автор: stab 23.1.2008, 12:48
не самый лучший вариант:
Код

DateTime.Now.ToString("yyyy/MM/dd hh:mm:ss")

Автор: Edd 23.1.2008, 16:28
Ещё проблемка:
В TextBox1 пишется дата : "23.01.2008 15:16:52", для SQL запроса надо "01.23.2008 15:16:52" (день и месяц поменять местами)
Испоьзую SqlDataSource1 для получения данных, где есть параметр Date1 который берёт текст из TextBox1.
Можно ли както в SqlDataSource1 конвертировать дату?
Или проще брать дату из другого контрола где уже конвертируется в нужный формат?

Автор: CYBERDREAM 23.1.2008, 16:47
Приветствую Edd
Код

            DateTimeConverter dd = new DateTimeConverter();
            DateTime dati = (DateTime)dd.ConvertFromInvariantString(textBox2.Text);
            string s=dati.ToString("твой формат вывода")

дальше уже извращаешься как пожелаешь

Автор: Edd 23.1.2008, 17:29
Что то не хочет, ругает: "String was not recognized as a valid DateTime."

Код

using System.ComponentModel;
...
TextBoxDate1.Text = DateTime.Today.ToString("dd.MM.yyyy HH:mm:ss");
...
DateTimeConverter dd = new DateTimeConverter();
DateTime dati = (DateTime)dd.ConvertFromInvariantString(TextBoxDate1.Text); //String was not recognized as a valid DateTime
string s = dati.ToString("MM.dd.yyyy HH:mm:ss");
TextBoxDate2.Text = s;

Автор: CYBERDREAM 23.1.2008, 17:41
по идее отсюда надо черпнуть инфу http://msdn2.microsoft.com/en-us/library/system.componentmodel.itypedescriptorcontext.aspx
А может можно куда легче сделать, увы сейчас нет времени глянуть smile 

Автор: Edd 24.1.2008, 11:20
Получилось следующим образом:
Код

using System.Globalization;
......
TextBoxDate1.Text = DateTime.Today.ToString("dd.MM.yyyy HH:mm:ss");
string s;
CultureInfo culture = new CultureInfo("de-DE");// ukazivajem kakoj kulturi format
DateTime temp;
temp = Convert.ToDateTime(TextBoxDate1.Text, culture);
s = temp.ToString("MM.dd.yyyy HH:mm:ss");
Label1.Text = s;

Спасибо за помощь! smile 

Автор: Нов 8.8.2008, 09:12
 Есть вопросы на эту тему(даты).  
1.На MSSQL даты находятся в американском формате MM.dd.yyyy HH:mm:ss. Данные я извлекаю с помощью Адаптера данных в DataGridView. Каким образом мне можно переформатировать полученные в Table данные в наш формат (dd.MM.yyyy) и убрать часы и минуты и секунды из вывода в таблице?
 2. Нельзя ли переставить формат данных дат на MSSQL 2005? 

Автор: mr.DUDA 8.8.2008, 09:39
Модератор: Пожалуйста, один топик - один вопрос.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)