Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.08.16;
Скачать: [xml.tar.bz2];

Вниз

Проблемы с DateToStr   Найти похожие ветки 

 
Zalm ©   (2009-06-18 00:41) [0]

Здравствуйте, пишу программу в ней нужно работать с датами и временем, отсчитывать сколько там отслось до такого-то время такого-то дня, нужно выводить время до секунд.
Проблема в том, что DateToStr как известно выводит дату на один день меньше 19 столетия, почему, на сайте так и не написали почему. Ну так вот, можно где-то "доставать" дату и время ральные а не 19 столетия? или может есть какие-то более удобные вещи для работы с датами и временем?

Спасибо если кто-то ответит...

Delphi 2009;
Win 7;
хотя это врод не важно для моей проблемы


 
Игорь Шевченко ©   (2009-06-18 00:54) [1]


> или может есть какие-то более удобные вещи для работы с
> датами и временем?


целый юнит есть - DateUtils.pas, там много разных полезных функций


 
DVM ©   (2009-06-18 00:56) [2]


> Проблема в том, что DateToStr как известно выводит дату
> на один день меньше 19 столетия

DateToStr дату не выводит, а преобразует дату/время в формате TDateTime в строку. Другой вариант - FormatDateTime().

Про 19 столетие не понял.


 
Германн ©   (2009-06-18 00:58) [3]


> Проблема в том, что DateToStr как известно выводит дату
> на один день меньше 19 столетия, почему, на сайте так и
> не написали почему. Ну так вот, можно где-то "доставать"
> дату и время ральные а не 19 столетия?

DateToStr выводит именно Дату/B>, а не интервал времени в годах, месяцах,... секундах.


 
Германн ©   (2009-06-18 00:59) [4]


> Про 19 столетие не понял.


> отсчитывать сколько там отслось до такого-то время такого-
> то дня, нужно выводить время до секунд.


 
Zalm ©   (2009-06-18 01:00) [5]

DVM ©

я пишу DateToStr(GetTime);
выводит  17\06\1899


 
DVM ©   (2009-06-18 01:03) [6]


> Zalm ©   (18.06.09 01:00) [5]


>
> я пишу DateToStr(GetTime);
> выводит  17\06\1899

А че ты хотел. чтобы она вывела то? GetTime - это время без даты.

Пиши DateToStr(Now)


 
Германн ©   (2009-06-18 01:04) [7]


> Zalm ©   (18.06.09 01:00) [5]
>
> DVM ©
>
> я пишу DateToStr(GetTime);
> выводит  17\06\1899

Где наверняка GetTime есть что-то типа DateTime1 - DateTime2


 
DVM ©   (2009-06-18 01:06) [8]


> Германн ©   (18.06.09 01:04) [7]


> Где наверняка GetTime есть что-то типа DateTime1 - DateTime2

Не, это в делфи оказывается такая функция есть, я сам не знал. Все время Time() использовал, а есть еще GetTime()


 
Германн ©   (2009-06-18 01:11) [9]


> DVM ©   (18.06.09 01:06) [8]
>
>
> > Германн ©   (18.06.09 01:04) [7]
>
>
> > Где наверняка GetTime есть что-то типа DateTime1 - DateTime2
>
> Не, это в делфи оказывается такая функция есть, я сам не
> знал. Все время Time() использовал, а есть еще GetTime()
>

В какой версии, в каком модуле?
В Д6 не нашел.


 
DVM ©   (2009-06-18 01:13) [10]


> Германн ©   (18.06.09 01:11) [9]

В D7 в справке вот:

Returns the current time.

Unit

SysUtils

Category

datetime routines

Delphi syntax:

function Time: TDateTime;
function GetTime: TDateTime;

C++ syntax:

extern PACKAGE System::TDateTime __fastcall Time(void);
extern PACKAGE System::TDateTime __fastcall GetTime(void);

Description

Time and GetTime return the current time as a TDateTime value. The two functions are completely equivalent.

Note: Time clashes with an Xlib function of the same name. Use GetTime in Linux and cross-platform code.


 
Германн ©   (2009-06-18 01:23) [11]


> DVM ©   (18.06.09 01:13) [10]

Тогда приведу комментарий из SysUtils от RadStudio 5
function GetTime: TDateTime;

{ Now returns the current date and time, corresponding to Date + Time. }


Так что там не только время.
Но я по прежнему уверен, что автор сабжа не понимает разницы между конкретной ДатойВремением и интервалом между двумя вышеназванными.


 
Balepa   (2009-06-18 01:30) [12]

Getlocaltime, Timestamp


 
DVM ©   (2009-06-18 01:30) [13]


> Германн ©   (18.06.09 01:23) [11]


> Тогда приведу комментарий из SysUtils от RadStudio 5

Это 2007 что ли которая?

А вот в 2009 нет такого:

function Time: TDateTime;
{$IFDEF MSWINDOWS}
var
 SystemTime: TSystemTime;
begin
 GetLocalTime(SystemTime);
 with SystemTime do
   Result := EncodeTime(wHour, wMinute, wSecond, wMilliSeconds);
end;

function GetTime: TDateTime;
begin
 Result := Time;
end;

Явно там нет даты, только время.


 
Германн ©   (2009-06-18 01:39) [14]


> DVM ©   (18.06.09 01:30) [13]
>
>
> > Германн ©   (18.06.09 01:23) [11]
>
>
> > Тогда приведу комментарий из SysUtils от RadStudio 5
>
> Это 2007 что ли которая?
>
> А вот в 2009 нет такого:
>

Да 2007.

> А вот в 2009 нет такого

Ну вот опять непонятно кого ругать и какими словами. Ведь при задаче вопроса есть возможность указать версию Дельфи! А в сабже пусто.
И после этого некоторые упрекают нас в по меньшей мере некорректности, а по большей мере в хамстве.


 
DVM ©   (2009-06-18 01:39) [15]


> Германн ©   (18.06.09 01:23) [11]


> function GetTime: TDateTime;
>
> { Now returns the current date and time, corresponding to
> Date + Time. }

Ты неправильно понял, последняя строка относилась к другой функции, вот там как на самом деле:

{ Date returns the current date. }

function Date: TDateTime;

{ Time returns the current time. }

function Time: TDateTime;
{$IFDEF LINUX}
 { clashes with Time in <X11/Xlib.h>, use GetTime instead }
 {$EXTERNALSYM Time}
{$ENDIF}
function GetTime: TDateTime;

{ Now returns the current date and time, corresponding to Date + Time. }

function Now: TDateTime;


 
DVM ©   (2009-06-18 01:41) [16]


> Германн ©   (18.06.09 01:39) [14]


> Ну вот опять непонятно кого ругать и какими словами. Ведь
> при задаче вопроса есть возможность указать версию Дельфи!
>  

А он указал вообще то :)

> Delphi 2009;


 
Германн ©   (2009-06-18 01:41) [17]


> DVM ©   (18.06.09 01:39) [15]
>
>
> > Германн ©   (18.06.09 01:23) [11]
>
>
> > function GetTime: TDateTime;
> >
> > { Now returns the current date and time, corresponding
> to
> > Date + Time. }
>
> Ты неправильно понял, последняя строка относилась к другой
> функции, вот там как на самом деле:

Да, неправ.


 
Германн ©   (2009-06-18 01:53) [18]


> DVM ©   (18.06.09 01:41) [16]
>
>
> > Германн ©   (18.06.09 01:39) [14]
>
>
> > Ну вот опять непонятно кого ругать и какими словами. Ведь
> > при задаче вопроса есть возможность указать версию Дельфи!
>
> >  
>
> А он указал вообще то :)
>
> > Delphi 2009;
>

И тут я не прав. Старею, блин! Реакция уже не та. :(
Но надеюсь, что мой телепатор всё-таки работает правильно.
См. [7]


 
Zalm ©   (2009-06-18 03:13) [19]

Спасибо за помошь, с датами разобрался. тока повидимому где-то накосячил в другом месте... не считает мне программа хоть убей одну вещь... буду искать:) спасибо всем



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2009.08.16;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.007 c
11-1205343379
Podarok
2008-03-12 20:36
2009.08.16
Как перебрать компоненты на форме и с помощью


2-1243568759
Rembo
2009-05-29 07:45
2009.08.16
Очистка памяти от массива экземпляров класса


2-1245399366
parasolka
2009-06-19 12:16
2009.08.16
Зафиксировать размаер панели.


1-1212141167
dmitry_12_08_74
2008-05-30 13:52
2009.08.16
Как добавлять 32-х битные картинки на компонент типа TSpeedButton


15-1244775180
TUser
2009-06-12 06:53
2009.08.16
Является ли Земля небесным телом?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский