IMHO.WS

IMHO.WS (https://www.imho.ws/index.php)
-   Программирование (https://www.imho.ws/forumdisplay.php?f=40)
-   -   DateTime in c# (https://www.imho.ws/showthread.php?t=73775)

aramis 17.11.2004 20:12

DateTime in c#
 
я тут в одном месте заколбасился и немогу найти ошибку
вот кусок кода(примерно)
в настройках системы стоит английский/сша

CultureInfo german=CultureInfo.CreateSpecificCulture("de-DE");
date=Convert.ToDateTime("17.11.2004",german);
x=date.ToShortDateString();


почему переменная х равна 11/17/2004, а не 17.11.2004?

joker99 17.11.2004 22:11

потому что в date информация о культуре не хранится. то есть Convert использовал её для парсинга, но сам date об этом не знает. Это просто DateTime. Для учёта культурты надо использовать date.ToString(format,culInfo) или просто date.ToString(culInfo).

А зачем переводит стринг в дату а потом назад в стринг?

aramis 18.11.2004 03:44

Цитата:

Сообщение от joker99
потому что в date информация о культуре не хранится. то есть Convert использовал её для парсинга, но сам date об этом не знает. Это просто DateTime. Для учёта культурты надо использовать date.ToString(format,culInfo) или просто date.ToString(culInfo).

А зачем переводит стринг в дату а потом назад в стринг?

я так и думал. просто мне нужно только число, а оно "безкультурное". но проблему я уже довольно просто решил

private string ConGer(DateTime dt)
{
return dt.Day.ToString().PadLeft(2,'0')+"."+dt.Month.ToString().PadLeft(2,'0' )+"."+dt.Year.ToString();
}

П.С. число я беру из xml, обрабатываю и пишу обратно, просто код сократил


Часовой пояс GMT +4, время: 06:44.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.