Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как получить название месяца и дня недели из текущей даты?


2012 ©   (2011-08-18 00:32:00) 

Здравствуйте! Очень хочется узнать, как можно получить название месяца и дня недели из текущей даты. Чтобы запись была не вида: 18.08.2011, а к примеру: Четверг, 18 Августа 2011 года.
Как можно это реализовать? Спасибо)


Ega23   (2011-08-18 14:50:00) [1]


> Изучить описание параметров указанной функции есть домашнее
> задание.


Ну may be, may be.
Мне в час ночи думать было лень. :)


Плохиш   (2011-08-18 14:48:00) [2]


> Ega23 ©   (18.08.11 14:36) [10]
>
>
> > oldman ©   (18.08.11 10:04) [4]
> > Плохиш ©   (18.08.11 14:24) [9]
>
>
> ТЗ было "Четверг, 18 Августа 2011 года."

Изучить описание параметров указанной функции есть домашнее задание.


Ega23   (2011-08-18 14:36:00) [3]


> oldman ©   (18.08.11 10:04) [4]
> Плохиш ©   (18.08.11 14:24) [9]


ТЗ было " Четверг, 18 Августа 2011 года."
День недели и месяца - с заглавной буквы, "года", а не "г." и запятая после дня недели.


Плохиш   (2011-08-18 14:24:00) [4]


> Ega23 ©   (18.08.11 00:55) [1]

Фу...

const
     CSIDL_RECENT = $0011;
     SUBLANG_RUSSIAN = $01;
     LANG_SYSTEM_RUSSIAN = (SUBLANG_RUSSIAN shl 10) or LANG_RUSSIAN;
     LOCALE_RUSSIAN = (SORT_DEFAULT shl 16) or LANG_SYSTEM_RUSSIAN;
...
var
     wsDate:     WideString;
     idx:        Integer;
...
 idx := 127;
 SetLength(wsDate, idx);
 idx := GetDateFormatW(LOCALE_RUSSIAN, DATE_LONGDATE, nil, nil, @wsDate[1], idx);
 MessageBoxW(0, @wsDate[1], 'Date', MB_OK);
...


Омлет   (2011-08-18 14:21:00) [5]

> oldman ©   (18.08.11 10:04) [4]
> FormatDateTime('dddd d of mmmm yyyy', myDate)


Выдаст четверг 18 of Август 2011.


Dennis I. Komarov   (2011-08-18 13:34:00) [6]


> oldman ©   (18.08.11 10:04) [4]

У него русс-версия


Dennis I. Komarov   (2011-08-18 13:32:00) [7]


> Ега добрый сегодня.

Не, он сегодня не в форме, иначе класс написал бы, да не просто класс... :)))


oldman   (2011-08-18 10:07:00) [8]

Автору в записную книжку:

http://www.delphisources.ru/pages/faq/faq_delphi_basics/FormatDateTime.php.html


oldman   (2011-08-18 10:04:00) [9]

FormatDateTime('dddd d of mmmm yyyy', myDate)

Ега прикалывается сегодня, по доброму так...
:)))


Inovet   (2011-08-18 09:59:00) [10]

Агки сгложная задача. Ега добрый сегодня.


2012   (2011-08-18 08:37:00) [11]


> Ega23 ©

ого, спасибо! )


Ega23   (2011-08-18 00:55:00) [12]


function MyDateFormat(Value: TDateTime): string;
const
 cDayOfWeekNames: array [1..7] of string = (
   'Воскресенье',
   'Понедельник',
   'Вторник',
   'Среда',
   'Четверг',
   'Пятница',
   'Шабат'
   );
 cMonthNames: array [1..12] of string = (
   'Января',
   'Февраля',
   'Марта',
   'Апреля',
   'Мая',
   'Июня',
   'Июля',
   'Августа',
   'Сентября',
   'Октября',
   'Ноября',
   'Декабря'
  );
var
 aDay, aMonth, aYear: Word;
begin
 DecodeDate(Value, aYear, aMonth, aDay);
 Result := cDayOfWeekNames[DayOfWeek(Value)] + ', ' +
      IntToStr(aDay) + ' ' +
           cMonthNames[aMonth] + ' ' +
           IntToStr(aYear) + ' года';
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо