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

Вниз

Не могу сравнить две даты - результат ошибка помогите разобраться   Найти похожие ветки 

 
koha ©   (2007-04-13 04:46) [0]

Вот пример сравнения в D 2006 он работает:

if FileDateToDateTime(FileAge(ParamStr(0))) < (Date+Time) then begin

Авот в Delphi 6  выходит ошибка: вот в этом месте  < (Date+Time)  Как заменить или преодолеть или найти уникальное решение?


 
Roman_S ©   (2007-04-13 07:35) [1]

Есть другое решение:
var Hour1, Min1, Sec1, MSec1: Word;
begin
DecodeTime(Time, Hour1, Min1, Sec1, MSec1); // Раскодировать текущее время
if (Hour1 = Hour2) and (Min1 = Min2) //добавь своё
then begin

Надёжно, работоспособно везде

Понять бы - как работает твой код!


 
Loginov Dmitry ©   (2007-04-13 08:12) [2]

> Авот в Delphi 6  выходит ошибка: вот в этом месте  < (Date+Time)
>  Как заменить или преодолеть или найти уникальное решение?


Текст ошибки где?


 
Рамиль ©   (2007-04-13 09:31) [3]


> Roman_S ©   (13.04.07 07:35) [1]

Зачем так жестоко? Лавры IncDay покоя не дают?:)


 
Virgo_Style ©   (2007-04-13 09:47) [4]

koha ©   (13.04.07 4:46)
"уникальное решение" - это круто... телепатор вещает, что Date и Time у тебя или разных типов, или одного, но этот тип - DateTimePicker.


 
Плохиш ©   (2007-04-13 11:21) [5]


> koha ©   (13.04.07 04:46)  


> (Date+Time)

А чем Now не угодил?


 
ЮЮ ©   (2007-04-13 11:41) [6]

А чем Now не угодил?
Это же не машина времени, которая ищет ещё не созданные файлы :)


 
_Аноним   (2007-04-13 15:09) [7]


> Roman_S ©  


> Надёжно, работоспособно везде


А если надо сравнить не на равенство, а на больше\меньше?
ИНтересно было бы посмотреть на код, который рещает эту проблему через DecodeTime :-)


 
Alexey (AZ)   (2007-04-13 17:32) [8]

unit DateUtils;
HoursBetween...
IncHours...


 
Плохиш ©   (2007-04-13 17:51) [9]


> Alexey (AZ)   (13.04.07 17:32) [8]

И как это поможет узнать какая дата больше?


 
koha ©   (2007-04-14 04:40) [10]

Всем огромное спасибо Data+Time оказалась ни причем, я поторопился с поспешными выводами, но вот у меня была в коде такая функия и в ней ошибка и происходила:
function SetToDate(SetDate: String; Days: Integer): String;
Var dd,mm,yyyy: integer;
   M: Array of integer;
begin
 dd   := StrToInt(Copy(SetDate,1,2));
 mm   := StrToInt(Copy(SetDate,4,2));
 yyyy := StrToInt(Copy(SetDate,7,4));
 dd   := dd+Days;
 SetLength(M,SizeOf(Month));
 Move(Month[1],M[1],SizeOf(Month));
 While M[mm] < dd do begin
   if Visocos(yyyy) then M[2]:=29
   else M[2]:=28;
   dd:=dd - M[mm];
   Inc(mm);
   if mm > 12 then begin
     mm:=mm-12;
     Inc(yyyy);
   end;
 end;
 if dd < 10 then Result:="0"+IntToStr(dd)+"."
 else Result:=IntToStr(dd)+".";
 if mm < 10 then Result:=Result+"0"+IntToStr(mm)
 else Result:=Result+IntToStr(mm);
 Result:=Result+"."+IntToStr(yyyy)+" "+TimeToStr(Time);
end;


Результат преобразовывался деле StrToDateTime -  ошибка возникала потому, что между Date и Time не стоял пробел, например
в D2006  такое преобразование уместно: StrToDateTime(10.11.0609:38:24)
а вот delphi6 неуместно - необходимо ставить пробел т.е. вот так  StrToDateTime(10.11.06 09:38:24)



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

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

Наверх





Память: 0.47 MB
Время: 0.044 c
2-1176453469
Merry
2007-04-13 12:37
2007.05.06
Обновить данные таблицы из другой таблицы


15-1174447857
KSergey
2007-03-21 06:30
2007.05.06
Я не понимаю что такое пиратский софт


2-1176705162
allucard
2007-04-16 10:32
2007.05.06
Как созданный класс сделать дочерним классу TForm?


1-1173684713
zap8
2007-03-12 10:31
2007.05.06
Погрешность в 1 секунду


15-1175927960
ArMellon
2007-04-07 10:39
2007.05.06
Как экспортировать ветку рееста в файл и обратно импортировать





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский